解决JSP存入数据库乱码问题

解决JSP存入数据库乱码问题

今天测试程序时出现乱码问题,网上查的资料都是说设置三个地方:

1.<%@ page contentType="text/html; charset=gb2312"%>(JSP编码方式)

2. (JSP页面显示)

3.<%
request.seCharacterEncoding("gb2312");//(处理表单请求)
%>

我设置了上面的三个地方还是不行,后来找到原因:因为我的MySQL数据库安装时没有选择默认编码格式,

这样在存入数据库时就不会有乱码了.

关于程序中处理字符乱码:

还可以统一在servlet中统一设置:自己写一个处理字符的Filter类,然后在Servlet进行配置.

如果使用spring我们可以直接使用spring框架中提供的处理字符的类:org.springframework.web.filter.CharacterEncodingFilter,配置如下:


    Spring character encoding filter
    org.springframework.web.filter.CharacterEncodingFilter
   
    encoding
    GB18030
   



    Spring character encoding filter
    *.jsp


    Spring character encoding filter
    *.do

意外收获:上面的配置启动tomcat比用下面的配置启动tomcat快,原因很简单,因为下面配置是检查所有的类,当然很慢.第一种配置启动tomcat要80000ms,而第二种配置只需要25000ms就启动了.


    Spring character encoding filter
    /*

http://hi.baidu.com/lk_well/item/19995d2051e7d9896f2cc34c点击打开链接

你可能感兴趣的:(Java开发)