上次做了一个基于Maven的Spring+MyBatis简单Demo,实现了MyBatis对数据库的操作,这次结合SpringMVC做了一个web的Demo。Spring+MyBatis的配置部分请参考之前的文章。
pox.xml文件
这次使用新的pox.xml文件,覆盖的之前的配置。
问题集合
1.后台Controller接收JSP页面的中文乱码
在进行editUser
条目时,username
为中文时getUser
总是为空,进行调试后才发现后台传入的username
为中文时产生了乱码,但是getAllUser
确实正常的。最后设置了Tomcat的编码后恢复正常。
一般解决方案如下(推荐全部使用UTF-8):
- JSP页面的编码设置为
UTF-8
:
`<%@ page language="java" pageEncoding="UTF-8"%> `
- 设置服务器(此处为tomcat)
URIEncoding="UTF-8"
:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
URIEncoding="UTF-8" />
-
web.xml
中通过配置spring用filter过滤
<!-- Spring字符集过滤器 -->
<filter>
<filter-name>SpringEncodingFilter</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>SpringEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
参考:
http://blog.csdn.net/eric_ykk/article/details/40453183
http://blog.csdn.net/bjyfb/article/details/8998267
网友评论