JavaWeb应用项目中文乱码的解决
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6383542.html
在把web项目成功部署到云主机后,通过浏览器成功地访问到了你的网站,却发现页面里本该由servlet传过来的中文参数值显示成了 ??? 乱码。这是什么原因呢?
这可能是由于你的web项目所在系统的字符编码、tomcat的字符编码、开发项目时myeclipse的字符编码以及建立数据库时的编码不一致造成的,解决方法就是逐一设置。
一:myeclipse设置项目编码
点击windows,Preference,点击左侧General,workspace。设置编码为UFT8。

二:项目中设置过滤器,设置request和response传递的参数为UTF8编码。

别忘了在web.xml中配置这个filter哦。
三:为云ubuntu设置中文编码
首先,安装简体中文环境
sudo apt-get install language-selector language-env language-pack-zh-hans
然后,更新locale
dpkg-reconfigure locales
编辑本地locale文件。注意,要先获取root权限:
sudo passwd root
输入密码后,解开启了root权限。然后输入
su
输入刚才的密码,进入root权限。为locale文件赋予777权限:
chmod /etc/default/locale
然后,编辑该文件:
sudo vi /etc/default/locale
按I进入编辑模式,移动光标到最下,在末尾添加
LANG="zh_CN.UTF-8"
LANGUAGE="zh_CN:zh"
按Esc退出编辑模式,输入 :wq 保存并退出文档。
然后重启你的云主机ubuntu,使配置生效。若你打开shell窗口就会发现有中文了,说明配置成功。
四:配置mysql字符编码
1:修改mysql配置文件
vi /etc/mysql/mysql.conf.d/mysqld.cnf
找到 [mysqld] 节点,在其下面追加
character-set-server=utf8
collation-server=utf8_general_ci
重启mysql,使配置生效
/etc/init.d/mysql restart
2:设置所用数据库字符编码
mysql> alter database 你的数据库名 character set utf8;
当然,你也可以进入所使用的数据库,一项项设置:
mysql>use 数据库名;
mysql> SET character_set_client=utf8;
mysql> SET character_set_connection = utf8;
mysql> SET character_set_database = utf8;
mysql> SET character_set_results = utf8;
mysql> SET character_set_server = utf8;
mysql> SET collation_connection = utf8;
mysql> SET collation_database = utf8;
mysql> SET collation_server = utf8;
五:配置tomcat编码
用 su 命令登录root权限,cd到tomcat的conf目录下。然后为server.xml文件赋予777权限。
chmod server.xml
打开server.xml:
vi server.xml
按I进入编辑模式,找到<Connector >结点,添加 URIEncoding="UTF-8"、useBodyEncodingForURI="true" 两行,如下图:

在下面,还有一处<Connector >,添加 URIEncoding="UTF-8",如下图:

按Esc退出编辑模式,输入 :wq 保存并退出。
重启tomcat使配置生效。
经过以上5步,基本上统一了项目涉及的所有关于编码的地方,中文参数值乱码的问题就解决啦~
JavaWeb应用项目中文乱码的解决的更多相关文章
- myeclipse导入项目中文乱码怎么解决教程
大家在Myeclipse导入项目的时候,应该都遇见过一些乱码的问题,不单单只是Myeclipse有这个问题,那么怎么解决Myeclipse导入项目乱码的问题呢,问题出现的原因是什么呢,下面来看看答案. ...
- Javaweb项目中文乱码
Javaweb项目中文乱码 一.了解常识: 1.UTF-8国际编码,GBK中文编码.GBK包含GB2312,即如果通过GB2312编码后可以通过GBK解码,反之可能不成立; 2.web tomcat: ...
- 详解get请求和post请求参数中文乱码的解决办法
首先出现中文乱码的原因是tomcat默认的编码方式是"ISO-8859-1",这种编码方式以单个字节作为一个字符,而汉字是以两个字节表示一个字符的. 一,get请求参数中文乱码的解 ...
- IDEA使用maven构建时控制台中文乱码的解决办法
使用maven clean install 项目时控制台中文乱码,解决办法如下: Setting->maven->runner VMoptions: -Dfile.encoding=UTF ...
- Win 7英文系统显示中文乱码的解决(转)
Win 7英文系统显示中文乱码的解决http://www.enet.com.cn/article/2011/0811/A20110811896633.shtml 请点击Startmenu并点击Cont ...
- php 使用phpmailer 发送邮件(附带中文乱码的解决方法)
下载phpmailer ,在程序里包含class.phpmailer.php 类 ,这里有中文乱码的解决方法 实例代码如下 <html> <head> <title&g ...
- C#中WebClient使用DownloadString中文乱码的解决办法
原文:C#中WebClient中文乱码的解决办法 第一次尝试: string question = textBox1.Text.ToString(); WebClient client= new We ...
- JSP的学习(4)——中文乱码的解决
本篇将以JSP页面中可能存在的中文乱码问题进行分析和解决. 中文乱码的问题一直是国人在编程过程中的一大头疼问题,这点上在JSP.Servlet或Tomcat上随处可见.比如我们在写一个Servlet时 ...
- xShell终端中文乱码完全解决方法
xShell终端中文乱码完全解决方法 xShell(xShell5)以及其他终端中文乱码的原因无非有三种:(1)Linux系统的编码问题:(2)xShell终端的编码问题: (3)两端的语言编码不一致 ...
随机推荐
- HttpMessageNotWritableException: Could not write JSON: No serializer found for class ****
今天碰到一个异常,下面是错误信息 org.springframework.http.converter.HttpMessageNotWritableException: Could not write ...
- SEO如何利用百度知道日引流上千IP
个人小站长.SEO们经常为网站没有流量而发愁,一个没有流量的网站就像一个不喝水的人,迟早得死.没有流量,就没有PV,也就是说你的网站只是 给你一个人看的,那做站有什么意义呢?网站上所发布的内容都是分享 ...
- SQLite中的事务操作
关于SQLite事务可以解决一些问题,比如你要插入两个数据,可以将两个数据作为同一个事务进行插入,这样如果第二个数据错误了,便自动执行回滚操作,第一个数据也不会插入成功,保证了数据的同步! 一.实际的 ...
- Arcgis ArcMap 10 如何生成msd地图文档定义【 arcgis mxd怎么转换成msd】
.mxd是arcgis 的地图文档后缀名. .msd是arcgis 的地图服务定义文件,是 map service definition 的缩写. 基于 MSD 的服务支持 Maplex.制图表达和新 ...
- 分析 Java heap dump工具之IBM HeapAnalyzer
IBM HeapAnalyzer是一款免费的JVM内存堆的图形分析工具,它可以有效的列举堆的内存使用状况,帮助分析Java内存泄漏的原因. 功能与MAT类似. 1.下载 https://www.ibm ...
- 第三章 dubbo内核之ioc源码解析
dubbo的IOC具体实现在:T injectExtension(T instance)方法中.该方法只在三个地方被使用: createAdaptiveExtension() --injectExte ...
- 读书笔记,《深入理解java虚拟机》,第二章,java内存区域与内存溢出异常
第二节,运行时数据区域. 在这个章节中,作者给出了一个java虚拟机运行时数据区的框图,图的左侧是方法区和堆,这两个数据区是所有的线程所共享的.然后是虚拟机栈.本地方法栈.还有程序计数器,这三个 ...
- js el jstl list 循环
需要在js中获取从Controller传过来的list集合,通过循环遍历找到对应的值,赋值到指定input框中 刚开始做法: for (var h = 0; h < gradesize; h++ ...
- 【Scala】Java-Scala-单例模式实现方法
Java-Scala-单例模式实现方法 scala 单例_百度搜索 scala实现单例模式-博客-云栖社区-阿里云
- 【Java】Springboot-Quartz-分布式任务调度
Springboot-Quartz-分布式任务调度 springboot 调度 自定义并发_百度搜索 spring-boot @Async 的使用.自定义Executor的配置方法 - CSDN博客 ...