jsp调用java中文是乱码_关于使用jsp时出现中文乱码的解决方案总结

相信很多人在java web 设计过程中都会遇到中文乱码问题吧! 常出现的问题有:“汉字变成了‘?’”、“显示的中文变成常人无法知晓的东东”......

出现这种现象的原因,概括而言就是不同环节的编码方式不同,导致了转换过程出现了乱码问题!

1.在显示jsp页面时

在每个jsp页面首行添加如下代码即可:

这里说明一点,contentType中的charset和pageEncoding的区别:

contentType的是指服务器发送给客户端时的内容编码

是jsp文件本身的编码 (当两者同时声明时,pageEncoding优先级较大!)

2.在获取请求参数时

在通过request对象获取请求的参数及其值时,需进行字符串转换,以支持中文显示,具体代码如下:

String name=(String)request.getParameter("xxx") ;

String namezh=new String(name.getBytes("iso8859-1"),"utf-8");

%>

3.Servlet输出响应

用户在编写Servlet时,需要针对不同的请求方法实现不同的实现接口(如doGet、doPost等接口),在实现这些 接口时需要设置字符集编码 ,以doGet接口为例,具体代码如下:

public void doGet(HttpServletRequest request,HttpServletResponse response)

throws ServletException,IOException {

request.setCharacterEncoding("utf-8");

response.setContentType("text/html;charset=utf-8");

......

}

笔者建议,最好把这两句语句写在函数体的开端!

终于写完了,这是第一篇技术博客哦!作为菜鸟,上述的总结不免有部分不当之处,望各路有才之士指点!多多指教!

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值