解决办法:统一编码.
1.视图层使用utf-8编码.具体加入以下代码:
<% @page contenttype="text/html;charset=utf-8"%>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
2.编译时期使用utf-8编码:
对于eclipse,netbean都可以调整编码类型.这里顺便说一下流行的项目管理工具maven的配置:
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.5</source>
<target>1.5</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
3.数据库系统采用统一编码:
很久之前,我一直认为数据库的编码是在编码时期就决定的.经过多次试验,终于搞清楚了其中的关系.
拿mysql为例子:我们通过
mysqldump -uroot -proot --quick --default-character-set=utf-8 --extended-insert=FALSE db > this.sql
把db库中的数据导出为utf-8数据.用vim(notepad)打开,看到的是一堆乱码。对于Unix,我们可以使用:
iconv -f utf-8 -t gb2312 -c this.sql > new.sql
将utf-8类型的数据转换为gb2312编码.查看一下,是否已经正常显示了呢?
4.运行时候过滤字符集合,这要通过servlet的过滤器来完成.Spring已经提供了一个
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
免受乱码之苦,做收渔翁之利,何乐而不为?
J2EE Web项目乱码解决方案(统一编码utf8)
最新推荐文章于 2021-01-14 08:47:10 发布