读书人

jsp+sql2005 安插数据库时中文乱码使

发布时间: 2013-10-25 14:36:53 作者: rapoo

jsp+sql2005 插入数据库时中文乱码,使用了过滤器,用utf-8编码
如果过滤器使用的是gb2312编码则没问题,读取正常。为了配合前台html页必须使用utf-8.
直接在数据库里添加中文时正常显示,jsp正常读取。
通过jsp页插入中文数据则在数据库里是乱码,读出也是乱码 数据库 乱码 jsp utf-8
[解决办法]

引用:
Quote: 引用:

Quote: 引用:

Quote: 引用:

在tomcat中也将编码设置成utf-8。

tomcat6 con文件夹下的xml文件最前边的都改成utf-8了,没效果

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

改成
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" URIEncoding="UTF-8" />

改了,然后重启tomcat,重新部署,还是不行。过滤器是不是和数据库对不起来,如果jsp+servle t request,response都设置成gb2312可以,但是那样需要修改太多页面,一个项目两种编码也不合适

Struts.xml:<constant name="struts.i18n.encoding" value="UTF-8" />
web.xml:
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
- <init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
jsp:<%@ page language="java" contentType="text/html;
charset=UTF-8" pageEncoding="UTF-8"%>
tomcat:<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" URIEncoding="UTF-8" />
其他地方可以设的都设成同一编码

读书人网 >Java Web开发

热点推荐