jsp、servlet中文乱码终极解决方法

本文详细介绍了如何解决Java Web中jsp和servlet出现的中文乱码问题,包括设置jsp页面的字符编码、处理传递参数的编码、调整服务器配置以及使用过滤器等方法,提供了一套完整的解决方案。
摘要由CSDN通过智能技术生成

 jsp中文乱码终极解决方法

一 找出问题的根源
   乱码可能出现的地方:1 jsp页面中 
                       2 jsp页面之间相互传参的参数
                       3 与数据库中数据的存取
   基本归纳为以上几种。

二 寻找解决方案
   1 出现在jsp页面中,是由于没有设置jsp页面的中文字符编码。
   2 出现在jsp页面之间相互传参,是由于参数没有设置正确的字符编码。
   3 以上2个问题解决了,那么存到数据库中,自然就不存在乱码。除非你对存入到数据库里的数据再次进行编码。
三解决方法:
1的解决方法 
<% @ page contentType = " text/html;charset=gb2312 "   %>
加上这句解决jsp页面中的中文乱码显示,tomcat编译完后向客户端输出的html文件不是采

用中文编码,所以会导致乱码产生。

2的解决方法
2.1 
<% request.setCharacterEncoding( " gb2312 " ); %>
加上这句解决jsp页面中的中文参数传递乱码。
因为浏览器默认使用的编码是“UTF-8”发送请求参数。
我们把它改为"gb2312"就ok了。

2.2 String(request.getParameter("name").getBytes("ISO8859_1"),"GB2312");
这句的意思是,把传来的参数全部编码转换成gb2312,这样做的缺点是每次传来一个参数

都要这样写,很麻烦。

同样可通过设置server.xml配置文件来实现。
< Connector
port ="8080"                maxHttpHeaderSize ="8192"
               maxThreads
="150"  minSpareThreads ="25"  maxSpareThreads ="75"
               enableLookups
="false"  redirectPor

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值