Tomcat解决编码乱码问题

似乎Tomcat编码问题每个人起初都遇到过,而且是个很头疼的问题,获取的数据总是乱码。最早的时候是在action中写编码转换的方法,如今看来很繁琐的方式,在当时兴奋了好久,终于可以正常显示中文了:


编码转换
public String code(String s) {

String str = s;

try {

byte b[] = str.getBytes("ISO-8859-1");

str = new String(b);

return str;

} catch(Exception e) {

return str;

}

}


---------------------------------------------------------------------


  之后才是用到这句是这个很无敌的语句:


  request.setCharacterEncoding("UTF-8");


----------------------------------------------------------------------

  最后才是最无敌的方法,过滤器:

  1:在TOMCAT自带的例子中(\webapps\examples\WEB-INF\classes\filters)找到2个文件RequestDumperFilter.java,SetCharacterEncodingFilter.java,加入到工程文件中去。

  2:配置 server.xml。


  <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" />

  <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" URIEncoding="UTF-8"/>

  加入红色的部门就好了。


  3:配置 web.xml  

  <filter>
    <filter-name>Set Character Encoding</filter-name>
      <filter-class>filters.SetCharacterEncodingFilter</filter-class>
      <init-param>
        <param-name>encoding</param-name>
        <param-value>GBK</param-value>
      </init-param>
    </filter>
    <filter-mapping>
      <filter-name>Set Character Encoding</filter-name>
      <url-pattern>/*</url-pattern>
    </filter-mapping>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值