关于java后台和java前台jsp页面交互时出现的编码问题

我提供我自己的几点思路和方法:

1、通过过滤器Filter来过滤,具体方法:新建Filter类

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

}

主要改写该方法

2、将获得字符串str通过

String newStr=new String(str.getBytes("ISO8895-1"),"UTF-8"); //来实现将获取的字符串编码方式的改变

注:该方法要放在try{}catch(){}中

3、在tomcat服务器的配置文件中,找到PORT=8080的Connector中添加URIEncoding="UTF-8"

注:该方法只能在tomcat服务器方面才有效。

4、可能从jsp传过来的字符串加了密,所以后台要进行解密,解密方法为:

                        try {
        str=URLDecoder.decode(str, "utf-8");
} catch (UnsupportedEncodingException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();

}

注:该方法主要用于请求方式为get的方法。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值