zoukankan      html  css  js  c++  java
  • HttpServletRequest字符集问题

    post中文处理

    1post在spring里的设置web.xml文件

    <!-- 字符处理  UTF8 -->
    	<filter>
    		<filter-name>encodingFilter</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>encodingFilter</filter-name>
    		<url-pattern>/*</url-pattern>
    		<dispatcher>REQUEST</dispatcher>
    		<dispatcher>FORWARD</dispatcher>
    	</filter-mapping>
    

    2设置HttpServletRequest.setCharacterEncoding("utf-8")

    3设置tomcat里的字符集

    get中文处理

    1设置tomcat

    2自己解码new String(username.getBytes("ISO-8859-1"),"UTF-8");

    tomcat字符集

    1tomcat8之前默认是ISO8859-1,tomcat8及其以后,是UTF-8;

    2设置tomcat下的conf/server.xml文件的URIEncoding="UTF-8" ;

    找到如下代码:    
    <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

    修改后:

    <Connector port="8080"  protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" />

    为什么默认的编码是iso-8859-1/UTF-8,下面这篇博客讲解了探索过程,但是tomcat8依旧是这几个包,他的编码为什么变为UTF-8?

    https://blog.csdn.net/gschen_cn/article/details/26155875

  • 相关阅读:
    1001 字符串“水”题(二进制,map,哈希)
    hzau 1210 Happiness
    hzau 1209 Deadline(贪心)
    hzau 1208 Color Circle(dfs)
    hzau 1207 Candies
    hzau 1206 MathematicalGame
    hzau 1205 Sequence Number(二分)
    hzau 1204 Escape from the Darkness
    Calculator 2
    Calculator
  • 原文地址:https://www.cnblogs.com/SmilingEye/p/10395814.html
Copyright © 2011-2022 走看看