JSP struts2 url傳參中文亂碼解決辦法
JSP struts2 url傳參中文亂碼解決辦法
1.設(shè)置struts.xml
<constant name="struts.i18n.encoding" value="UTF-8" />
或是設(shè)置struts.properties(我自己沒試過)
struts.i18n.encoding=UTF-8
2.在web.xml添加編碼過濾器
<filter> <filter-name>characterEncodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter>
<filter> <filter-name>characterEncodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter>
上面用的是spring自帶的,也可以自己寫,核心語句就是request.setCharacterEncoding(this.encoding);
3.設(shè)置tomcat的配置
1和2都只能設(shè)置post方式提交數(shù)據(jù)的編碼方式,如果url有中文的話就會有亂碼,解決辦法是在
tomcat的\conf\server文件的
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8"/>
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8"/>
加入 URIEncoding="UTF-8"。如果你正在使用eclipse,記得重啟eclipse,把服務(wù)器的設(shè)置刪除,重新設(shè)置。我就是因為沒有這樣做搞得配置文件沒生效,調(diào)試了半天
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
jsp 連接sql server 2008 連接不上的解決方法
需要用到j(luò)sp 通過jdbc來訪問sql serve2008 , 結(jié)果在遇到好多問題,感覺被坑了個大。。2013-05-05詳解JSP中的語句對象Statement操作MySQL的使用實例
這篇文章主要介紹了JSP中的語句對象Statement操作MySQL的使用實例,講解了添加記錄、更新記錄、刪除記錄三種操作,說明都在代碼注釋中簡單明了,需要的朋友可以參考下2016-04-04JSP教程(六)-怎么在JSP中跳轉(zhuǎn)到別一頁面
JSP教程(六)-怎么在JSP中跳轉(zhuǎn)到別一頁面...2006-10-10AJAX 自學(xué)練習(xí) 無刷新提交并修改數(shù)據(jù)庫數(shù)據(jù)并顯示
對應(yīng)在數(shù)據(jù)庫中表格 rocars表的msg_id,ccrn兩個字段?,F(xiàn)在要實現(xiàn)在界面上修改ccrn的值,ajax提交到response.jsp頁面,并調(diào)用RocarsEntiy.updateCcrn方法更新對應(yīng)的ccrn,最后無刷新顯示2009-09-09