java乱码问题

1.问题描述

  最近在海南做一个项目,当时出现了在java后台中文数据是正常的,但在页面展示时却是乱码。我在页面中也设置了数据类型“utf-8”,但还是没有用处。后来在网上查一资料才找了比较好的解决方法。

2.解决方法:

  方法一:修改tomcat配置,在server.xml中找到<Connector port="8080" protocol="HTTP/1.1"   connectionTimeout="20000"     redirectPort="8443" URIEncoding="UTF-8"/>内容,并将标红的内容加入即可。不过此种方法只能局限于用tomcat的项目中,如果后期项目迁移到其他服务还是会出现乱码问题,所以对项目的迁移性会造成不好影响。

    方法二:在web.xml中配置  

    <filter>  

        <filter-name>characterEncodingFilter</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>characterEncodingFilter</filter-name>  
        <url-pattern>*.*</url-pattern>  
    </filter-mapping> 

方法三:将工程设置成utf-8或者gbk

方法四: 如果是在页面中出现乱码,那我建议在页面有中文数据的参数前加入encodeURI(),例如:encodeURI('内存利用率')。通过此方法对数据进行一次解码就可以解决乱码问题。

   方法五:如果是在java后台产生乱码,那可以通过String id = new String(str.getBytes("ISO8859-1"), "utf-8");此方法解决。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值