Java Web中数据从前端输入到插入数据库,哪些地方需要考虑字符编码?
生活随笔
收集整理的這篇文章主要介紹了
Java Web中数据从前端输入到插入数据库,哪些地方需要考虑字符编码?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、JSP頁面:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
3、Tomcat
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
2、JDBC獲取連接時:
3、Tomcat
瀏覽器請求傳到Tomcat容器的時候還會經歷一次編碼轉換,而Tomcat7.0對請求的默認編碼字符集是ISO8859-1(還沒找到Tomcat的官方文檔來支持這一觀點),所以解決方法就是在java代碼里對請求再次進行編碼轉換。其中有兩種處理方式:
(1)對參數值的字符串進行編碼轉換。
new String(request.getParameter("name").getByte("ISO-8859-1"),"UTF-8");
(2)對進入容器的所有請求進行編碼轉換。這個方式需要配置一個過濾器,然后在web.xml中調用
request.setCharacterEncoding("UTF-8"); response.setContentType("text/html;charset=UTF-8");
(3)如果使用spring,可以直接調用spring的包
<!-- CharacterEncodingFilter provided by SpringFramework --> <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-mapping><filter-name>characterEncodingFilter</filter-name><url-pattern>/*</url-pattern> </filter-mapping>
總結
以上是生活随笔為你收集整理的Java Web中数据从前端输入到插入数据库,哪些地方需要考虑字符编码?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 刘朋:程序员如何练就领导力
- 下一篇: 追根溯源 - 数据中台概念的起源