JSP struts2 url传参中文乱码解决办法1.设置struts.xmlconstant name="struts.i18n.encoding" value="UTF-8" /或是设置struts.properties(我自...
JSP struts2 url传参中文乱码解决办法
1.设置struts.xml
<constant name="struts.i18n.encoding" value="UTF-8" />
或是设置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.设置tomcat的配置
1和2都只能设置post方式提交数据的编码方式,如果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,把服务器的设置删除,重新设置。我就是因为没有这样做搞得配置文件没生效,调试了半天
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
本文标题为:JSP struts2 url传参中文乱码解决办法
基础教程推荐
- Java实现插入排序算法可视化的示例代码 2023-04-23
- Java Web开发中过滤器和监听器使用详解 2023-06-30
- 关于Java双大括号{{}}的具体使用 2023-03-15
- MyBatis-Plus自定义通用的方法实现 2023-07-15
- java知识点7——面向过程和面向对象、面向对象的内存分析、构造方法 2023-09-01
- Spring Cloud Config分布式配置中心使用介绍详解 2023-05-07
- RocketMQ Push 消费模型示例详解 2023-05-24
- Java List的get方法 2023-10-08
- 一文带你搞懂Java中方法重写与方法重载的区别 2023-07-14
- Java多线程学习笔记之三内存屏障与Java内存模型 2023-09-01
