最近刚使用IDEA,在开发一个功能的时候,开始使用Jetty作为容器进行web项目开发,测试通过。然后想了一下线上服务器使用的容器是Tomcat,还是用Tomcat跑一下项目在测试一下,本地和服务器使用相同的容器,这个可以避免因为容器不同而导致本地测试通过,而上线又出现莫名的错误~!

就在我从Jetty切换到Tomcat,就发生了问题,访问JSP页面使用response输出,出现了乱码!!!

就是下面这些东东:(这是什么啊!萌币中。。。。。)

 ����⣺ ����⣺ ����⣺ ����⣺ ����⣺ ����⣺ ����⣺



这很是郁闷,本想着一次性测试通过,没想到这里又让我停留!

看到乱码,心里不要害怕,不要紧张!冷静下来进行分析,看哪里出现问题!

我开始思考:

first :数据库(mysql)---utf-8

show variables like 'character%'

character_set_client	utf8
character_set_connection utf8
character_set_database utf8
character_set_filesystem binary
character_set_results utf8
character_set_server utf8
character_set_system utf8
character_sets_dir /aebiz/soft/mysql/share/charsets/

second:Tomcat---utf-8

  <Connector URIEncoding="utf-8" connectionTimeout="20000" port="8888" protocol="HTTP/1.1" redirectPort="8443"/>

Third:jsp --- utf-8

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8" %>

fourth:web.xml---utf-8

<filter>
<filter-name>CharacterEncodingFilter</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>
</filter>
<filter-mapping>
<filter-name>CharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

Fifth:request和response

		request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");

Sixth:java代码字符串编码

 str = tmpWriter.getByteArrayOutputStream().toString("utf-8");

全部都检查过之后,发现全部是utf-8。大写的一个懵字,全部是utf-8怎么还是会有乱码出现呢?

好忧伤,难道是还有什么地方没有设置吗,我一想,是不是IDEA结合Tomcat编码设置有问题导致的呢?按照这个思路发现奇迹就在前面!

在配置Tomcat的时候添加一些参数。如下(开始是没有设置-Dfile.encoding=UTF-8)

-server
-Xms1024m
-Xmx2048m
-XX:PermSize=512m
-XX:MaxPermSize=512m
-XX:+CMSClassUnloadingEnabled
-XX:+PrintGCDetails
-Xloggc:%M2_HOME%/gc.log
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=%M2_HOME%/java_pid.hproyuan

用搜索引擎发现下面博文:

http://blog.csdn.net/u014424628/article/details/49429393

于是添加VM参数添加

-Dfile.encoding=UTF-8

配置参数就是

-server
-Xms1024m
-Xmx2048m
-XX:PermSize=512m
-XX:MaxPermSize=512m
-XX:+CMSClassUnloadingEnabled
-XX:+PrintGCDetails
-Xloggc:%M2_HOME%/gc.log
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=%M2_HOME%/java_pid.hproyuan
-Dfile.encoding=UTF-8

启动发现页面乱码不见了,可是控制台有出现了乱码,乱码真是 生生不息 啊!

于是配置

idea安装目录下的bin文件夹,idea.exe.vmoptions文件中

添加一条配置信息:-Dfile.encoding=UTF-8

so,一切都解决了!完美!

推荐文章:

http://mp.weixin.qq.com/s/QE5-Mw1kVzvzb_SiI1ZIFQ


欢迎访问我的csdn博客,我们一同成长!

"不管做什么,只要坚持下去就会看到不一样!在路上,不卑不亢!"

博客首页:http://blog.csdn.net/u010648555

IDEA——IDEA使用Tomcat服务器出现乱码问题的更多相关文章

  1. Tomcat服务器常用配置和HTTP简介

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html 内部邀请码:C8E245J (不写邀请码,没有现金送) 国 ...

  2. Android开发之下载Tomcat服务器的文件到模拟器的SD卡

    Tomcat服务器可以到Apache的官网去下载http://tomcat.apache.org/,如何配置和使用百度下也有很多介绍,只要把Java的SDK配下java_home环境变量就行了,因为T ...

  3. JavaEE:Tomcat服务器常用配置和HTTP简介

    Web服务器常用配置1.Web系统采用B/S结构通信的:Browser --- Server1)浏览器向服务器发送访问目标资源请求(请求)2)服务器根据请求的目标资源路径,在服务器端进行查找(请求查找 ...

  4. Tomcat热部署:Maven项目一键部署到Tomcat服务器 - 支持多环境

    参考:Eclipse中的Maven项目一键部署到Tomcat服务器 - 支持多环境部署 命令 debug模式设置关联源码 eclipse --> 项目右键 --> Debug As --& ...

  5. 如何设置tomcat服务器编码为utf-8编码

    原文:http://blog.csdn.net/u014079773/article/details/52637057 在实际开发中我们经常遇到request请求的中文乱码,那么如何解决中文乱码问题? ...

  6. 【Server】Windows系统安装Tomcat服务器

    安装Tomcat服务器 Tomcat服务器地址:https://tomcat.apache.org/download-80.cgi 当前版本点选8以上版本,最新的可能不稳定,所以选8或者9版本 直接解 ...

  7. Tomcat服务器的下载以及配置

    1,Tomcat的下载与安装 本人采用的是解压版安装,只需要在官网(https://tomcat.apache.org/)下载好压缩版的Tomcat,再解压在你想安装的目录下即可.我的安装目录是D:\ ...

  8. Tomcat服务器种的HttpServletRequest类

    HttpServletRequest 类有什么作用:             每次只要有请求进入 Tomcat 服务器,Tomcat 服务器就会把请求过来的 HTTP 协议信息解析好封装到 Reque ...

  9. TOMCAT WEB请求乱码

    post乱码: 原因: ​ 对于POST方式,它采用的编码是由页面来决定的即ContentType("text/html; charset=GBK").当通过点击页面的submit ...

随机推荐

  1. 早期MyBatis开发与接口式Mybatis开发的简介

    早期MyBatis开发与接口式Mybatis开发的简介 一.早期版本的myBatis使用 导jar包            1.配置mybatis.xml的配置文件                1) ...

  2. 在Hudson Job中启动daemon进程

    场景 在Hudson中新建一个Job用于构建Web工程,在Job的构建脚本的最后会启动Jetty,观察发现Jetty启动之后一小段时间,进程就终止了.   环境 CentOS 6,Hudson 3.0 ...

  3. 关于wamp服务器文件的配置

    有的前端朋友想在手机端看PC端开发的html5页面,这时候会在本地PC下载一个wamp,这时候在PC端输入电脑的IP地址或者是直接输入localhost,可以访问www目录下的文件(开发项目必须放置在 ...

  4. c语言中的文件格式化读写函数fscanf和fprintf函数

    很多时候我们需要写入数据到文件中时都觉得很困扰,因为格式乱七八槽的,可读性太差了,于是我们就想有没有什么函数可以格式化的从文件中输入和输出呢,还真有.下面我将讲解一下fscanf和fprintf的强大 ...

  5. border-radius值的解析

    border-radius: none | length{1,4} / length{1,4} 其中每一个值可以为 数值或百分比的形式. length/length 第一个lenght表示水平方向的半 ...

  6. my new start

    my new start in blog csdn : today i formally migrate my personal technical blog from sina to here in ...

  7. 201521123082 《Java程序设计》第12周学习总结

    201521123082 <Java程序设计>第12周学习总结 标签(空格分隔): java 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. An ...

  8. 学号:201521123116 《java程序设计》第七周学习总结

    1. 本周学习总结 2. 书面作业 Q1 ArrayList代码分析 1.1 解释ArrayList的contains源代码ArrayList的contains源代码 1.2 解释E remove(i ...

  9. 201521145《Java程序设计》第2周学习总结

    1. 本章学习总结 掌握了整数类型(byte short int long char),浮点型(float double),布尔型(boolean)的使用,以及它们的包装类Byte Short Int ...

  10. How To:禁用ubuntu全局菜单(global menu)的方法

    刚从windows转过来的新手可用会觉得ubuntu unity下的全局菜单(global menu)用起来很不方便.下边是介绍去除全局菜单的方法 1.打开终端(可以去dash主页里面搜,也可以直接按 ...