就是提交前就乱码了.
在struts为了统一对中文进行处理,可以通过过滤器进行统一处理:处理的类为:
package com.chen.action;
import javax.servlet.Filter;
import javax.servlet.*;
import java.io.*;public class SetCharacterEncodingFilter implements Filter {
public void destroy(){}
public void doFilter(ServletRequest request,ServletResponse response,FilterChain chain)throws IOException,ServletException{
request.setCharacterEncoding("gb2312");//设置URL的编码
chain.doFilter(request,response);//传给下一个过滤器
}
public void init(FilterConfig filterConfig)throws ServletException{}
}2。然后在web.xml中设置过滤器
<filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>com.chen.action.SetCharacterEncodingFilter</filter-class>//这里一定使用全路径,不然无法找到类会出错
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
在struts为了统一对中文进行处理,可以通过过滤器进行统一处理:处理的类为:
package com.chen.action;
import javax.servlet.Filter;
import javax.servlet.*;
import java.io.*;public class SetCharacterEncodingFilter implements Filter {
public void destroy(){}
public void doFilter(ServletRequest request,ServletResponse response,FilterChain chain)throws IOException,ServletException{
request.setCharacterEncoding("gb2312");//设置URL的编码
chain.doFilter(request,response);//传给下一个过滤器
}
public void init(FilterConfig filterConfig)throws ServletException{}
}2。然后在web.xml中设置过滤器
<filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>com.chen.action.SetCharacterEncodingFilter</filter-class>//这里一定使用全路径,不然无法找到类会出错
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
解决方案 »
- 新手求助!!
- 悲剧,struts2 hello程序错误
- 请问下数据库关联设计的一个问题
- xfire下的webservice的登录验证问题与业务校验问题
- tomcat SSL 如何设置支持同时启用单、双向认证
- 读写ORACLE数据库的错误,急!
- 使用weblogic还是websphere?请大家给个意见~~~~谢谢
- 请问如何获取本地公网IP地址?
- spring加载很久No Spring WebApplicationInitializer types detected on classpath
- Java上传文件的编码格式
- fop 生成pdf中文乱码
- 在线考试系统的实现,如何实现office、windows操作题的阅卷?
在web.xml中加了如下内容:
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>gbk</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>
</filter-mapping>
二楼说的"就是提交前就乱码了",我觉得不是,提交到服务器处理时,我把接收过来的信息,输出到控制台,是正常的中文.但存到数据库,数据库里面显示的就是乱码.提交前应该不算乱码吧
一楼提到的,数据库编码问题,我想过很有可能是这引起的.但我的数据库编码好像是gbk样的.在mysql命令窗口插入中文记录是能正常的.页面编码我也是用gbk
不知道你服务器用的是什么,如果是tomcat那就在tomcat配制文件的端口号那一行加上charEncoding="gbk"属性就可以了.(好象是这么写的,我以前记过,不过现在资料没在身边.)