读书人

struts1 乱码有关问题

发布时间: 2012-04-08 14:38:30 作者: rapoo

struts1 乱码问题
我用 ActionForm 取到页面的属性值。
在Action中使用这些属性值同数据库比较时。取得的中文是乱码。

我使用了filter 也不行,如下

package com.contract.filter;
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 SetCharacterEncodingFilter implements Filter {

public void destroy() {

}

public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
request.setCharacterEncoding("gb2312");
response.setCharacterEncoding("gb2312");
chain.doFilter(request, response);
}

public void init(FilterConfig arg0) throws ServletException {

}

}


xml配置

<filter>
<filter-name>encodeFilter</filter-name>
<filter-class>com.contract.filter.SetCharacterEncodingFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>encodeFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>


[解决办法]
是数据库中取出来的乱码呀,还是页面上获取之后显示的是乱码呀?
[解决办法]
说的太迷糊了
不过我想应该是页面的传过来的是乱码

用 String newText = new String("乱码".getBytes("ISO-8859-1"), "GBK");
[解决办法]
乱码,用filter解决呀,页面、源文件、工程编码要一致!
[解决办法]
数据库的编码不一致

读书人网 >Java Web开发

热点推荐