|
具体的解决方法:
1.修改Tomcat---->conf----->server.xml文件,在修改端口的标签后面加一行代码,如下:
Xml代码
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8"/>
2.编写过滤器Filter
Java代码
package com.finance.utils;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class CharacterEncodingFilter implements Filter{
public void destroy() {
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
request.setCharacterEncoding("utf-8");
chain.doFilter(request, response);
}
public void init(FilterConfig arg0) throws ServletException {
}
}
利用过滤器,把requst传递的中文参数都设成“UTF-8”编码。
3.后台项目采用UTF-8编码
4.修改web.xml文件
添加如下内容
<filter>
<filter-name>characterEncoding</filter-name>
<filter-class>com.finance.utils.CharacterEncodingFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>characterEncoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
为了使设置生效,重起tomcat。 |
|
|