初学JSP笔记———关于中文乱码

来源:互联网 发布:人工智能科学家 编辑:程序博客网 时间:2024/05/16 00:49

参考文献《零基础学java web 开发》

一.JSP页面中文乱码(1.HTML中的中文乱码。。2.JSP中动态输出中文乱码)

解决方法:在开始出的标签<%@ page ---------%>里面加上或修改contentType="text/html;charset=gb2312"。

 

二.URL 传递参数中文乱码

    例如:<a href="uuuuu.jsp?param='中文'">点击处</a>

解决方法:修改Tomcat-->conf-->server.xml文件

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

然后重启tomcat

 

三.表单提交乱码

  如果是因为tomcat对post方法提交的表单采用了默认的编码‘ISO-8859-1’

解决办法:new String(posteddata.getBytes("ISO-8859-1"),"gb2312");   其他编码也是类似解决,。但是这个方法只是针对少量这种乱码的解决

。。实际开发中还是得使用过滤器filter...。下面介绍过滤器原理:每一个请求,都必须经过过滤器处理才能继续发送到目的页面...post--request--filter--page...

代码略

 

四.数据库操作中文乱码

    1.建立数据库的时候选择支持中文的编码。最好跟jsp页面编码一致。

    2.jdbc中使用类似下面的形式:jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs;useUnicode=true;characterEncoding=gb2312

 

但如果数据库已经是ISO-8859-1编码。就成了写入正常中文,读出来是ISO-8859-1编码的(即乱码了)。。。解决是用转码:new String(posteddata.getBytes("ISO-8859-1"),"gb2312");  

 

 

原创粉丝点击