<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="500" minSpareThreads="20" maxIdleTime="60000" />
<Connector executor="tomcatThreadPool" port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
keepAliveTimeout="15000"
redirectPort="8443"
URIEncoding="utf-8"
/>
-
tomcat配置字符编码
2016-04-22 15:24:55tomcat/conf/server.xml 修改如下tomcat/conf/server.xml 修改如下
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"/><!--URIEncoding="UTF-8"--> -
修改Tomcat的字符编码配置解决乱码问题
2017-09-08 22:12:45修改Tomcat的字符编码配置解决乱码问题对于乱码问题相信都会碰到,方式有很多中,比如在拦截器中进行设置、请求参数中设置,特别是get请求很繁琐,当然也有很多框架帮我们解决了。如果我们使用的是Tomcat作为我们的...修改Tomcat的字符编码配置解决乱码问题
对于乱码问题相信都会碰到,方式有很多中,比如在拦截器中进行设置、请求参数中设置,特别是get请求很繁琐,当然也有很多框架帮我们解决了。如果我们使用的是Tomcat作为我们的服务器容器的话,可以修改Tomcat的server.xml的配置即可。
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="utf-8" />
即加上 URIEncoding=”utf-8” 就一劳永逸了。
-
tomcat编码配置gbk_修改tomcat默认的编码方式
2020-12-19 05:08:13一:form在前台以post方式提交数据:浏览器将数据(假设...数据到达服务器后,数据(98 99)要封装到request中,在servlet中调用Request的getParameter方法返回的是字符串(“中国”),方法内部拿到数字后要转成字符,一...一:form在前台以post方式提交数据:
浏览器将数据(假设为“中国”)发送给服务器的时候,将数据变成0101的二进制数据(假设为98 99)时必然要查码表,浏览器以哪个码表打开网页,浏览器就以哪个码表提交数据。数据到达服务器后,数据(98 99)要封装到request中,在servlet中调用Request的getParameter方法返回的是字符串(“中国”),方法内部拿到数字后要转成字符,一定要查码表,由于request的设计者是外国人,所以默认查的是他们常用的ISO8859-1,这就是请求数据产生乱码的根源。
package com.yyz.request;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
//以post方式提交表单
public class RequestDemo extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//请求数据的中文乱码问题
request.setCharacterEncoding("UTF-8");//客户端网页我们控制为UTF-8
String username = request.getParameter("username");
//获取数据正常,输出数据时可以查阅不同码表
response.setCharacterEncoding("gb2312");//通知服务器发送数据时查阅的码表
response.setContentType("text/html;charset=gb2312");//通知浏览器以何种码表打开
PrintWriter out = response.getWriter();
out.write(username);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request,response);
}
}
二:form在前台以get方式提交数据:
get方式提交的数据依然是浏览器用什么码表打开就用什么码表发送。不同的是,以get方式提交数据时,request设置编码无效。即使设置了UTF-8还是会去查ISO8859-1。得到(? ?),要解决这个问题,需要拿着(??)反向查ISO8859-1,拿到(98 99)后,再去查正确码表。
1 package com.yyz.request;
2
3 import java.io.IOException;
4 import java.io.PrintWriter;
5
6 import javax.servlet.ServletException;
7 import javax.servlet.http.HttpServlet;
8 import javax.servlet.http.HttpServletRequest;
9 import javax.servlet.http.HttpServletResponse;
10 //以get方式提交表单
11 public class RequestDemo extends HttpServlet {
12
13 public void doGet(HttpServletRequest request, HttpServletResponse response)
14 throws ServletException, IOException {
15 //请求数据的中文乱码问题
16 request.setCharacterEncoding("UTF-8");//以get方式提交数据时,request设置编码无效。即使设置了UTF-8还是会去查ISO8859-1
17 String username = request.getParameter("username");
18 System.out.println(username);
19 byte source [] = username.getBytes("iso8859-1");
20 username = new String (source,"UTF-8");
21 System.out.println(username);
22
23 }
24
25 public void doPost(HttpServletRequest request, HttpServletResponse response)
26 throws ServletException, IOException {
27 doGet(request,response);
28 }
29
30 }
三:提交数据中文乱码问题总结:
1.如果提交方式为post,想不乱码,只需要设置request对象的编码即可。
注意:客户机数据是以哪种方式提交的,request就应该设成什么编码。
2.如果提交方式为get,设置request对象的编码是无效的,想不乱码,只能手工转换。
String data = "???????";//乱码字符串
byte source [] = data.getBytes("iso8859-1");//得到客户机提交的原始数据
data = new String (data.getBytes("iso8859-1"),"UTF-8");//解决乱码
//等同于
data = new String (source,"UTF-8");
3.get方式的乱码,还可以通过更改服务器配置的方式实现。更改Tomact的conf目录下的server.xml文件。
3.1
这种方式并不推荐,因为更改了服务器且并不灵活。
3.2
这么设置后,request的setCharacterEncoding设置什么编码,连接器就用什么编码,虽然比上一种更改灵活,但依然会导致我们的应用程序牢牢依赖于服务器,也不被推荐。
四:最后的最后,提一个小细节:URL地址后面如果跟了中文数据,一定要经过URL编码。表单提交的参数有中文数据,浏览器会自动帮我们编码,但如果是通过链接直接带中文参数,浏览器是不会帮我们编码的,这时想通过上述第二种方式解决中文乱码问题就时灵时不灵了,应该通过URLEncoding.encode(,"UTF-8")先编码。
-
tomcat 的线程池配置,字符编码设置
2017-03-23 09:33:00优化tomcat配置 ,修改原先的配置conf/server.xml 配置<Executor name="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="500" minSpareThreads="20" maxIdleTime="60000" /> <Connector execut...优化tomcat配置 ,修改原先的配置conf/server.xml 配置转载于:https://www.cnblogs.com/signheart/p/6603473.html
-
配置Eclipse中Tomcat服务的字符编码
2019-07-24 10:44:39在修改端口处加上 URIEncoding="utf-8" <Connector URIEncoding="utf-8" connectionTimeout="20000" port="8090" protocol="HTTP/1.1" redirectPort="8443"/> 用过滤器设置字符编码 1、创建一个字符... -
Tomcat服务器字符编码更改
2018-05-25 14:12:50修改Tomcat配置文档server.xml <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="utf-8" /&... -
修改Myeclips自带Tomcat字符编码方法
2018-11-06 15:00:55先用Myeclipse自带的Tomcat部署项目,在workspace工作空间里的.metadata会生成conf配置文件,打开conf配置文件找到server.xml文件,记事本打开,然后在 <Connector executor=“tomcatThreadPool” port=“8080” ... -
修改tomcat配置,解决ajax提交中文字符乱码问题
2013-05-03 16:33:16问题描述: 通过ajax提交数据到action时,action...修改tomcat的配置文件,增加编码设置,将编码设置为utf-8 具体代码为: [code="java"] [/code] 在默认配置的基础上增加URIEncoding="utf-... -
设置Tomcat及Weblogic字符编码
2013-05-24 13:58:31【正文】因为编码方式的不同在使用Tomcat容器时会出现提交到Servlet的中文是乱码的方式,而且...可以采用配置服务器字符编码的方法,具体操作如下: 1、打开Tomcat安装目录中的conf目录 2、修改server.xml中的conne -
tomcat中修改jvm的,编码
2013-01-21 16:23:38服务器运行在tomcat中,有一个字符串需要加密输出来,包含中文,环境在本机用eclipse做的时候没有任何问题,可是一放到服务器上因为服务器系统编码是gbk的,所以就会出现乱码 解决办法: 在Tomcat的启动脚本中... -
Tomcat URL 有特殊字符问题
2019-01-29 16:49:11Tomcat 早起版本是支持特殊字符的,不过后来版本中认为这些字符是不安全的(unsafe),所以不能直接在URL 中对这些字符直接传入,需要编码来表示,有人提出异议后Tomcat给开发人员留了个后门 ,可以自行配置: 修改... -
设置Tomcat及Weblogic字符编码,解决数据提交的乱码问题
2015-05-06 14:40:41【正文】因为编码方式的不同在使用Tomcat容器时会出现提交到Servlet的中文是乱码的方式,而且...可以采用配置服务器字符编码的方法,具体操作如下: 1、打开Tomcat安装目录中的conf目录 2、修改server.xml中的conne -
tomcat中修改jva的,编码
2011-03-30 21:30:001、JVM中缺省字符集 或者在环境变量中配置JAVA_OPTS=%JAVA_OPT%;-Dfile.encoding=GBK -Duser.language=zh_CN 或者在Tomcat的启动脚本中配置JAVA_OPTS=%JAVA_OPT%;-Dfile.encoding=GBK -Duser.language=zh_CN... -
JSP 移动端服务器tomcat中国文编码支持
2015-07-05 00:35:11找到tomcat目录下的conf下的server.xml文件,我们要修改的就在这里,由于我们为移动提供服务大多是json格式,而json只能使用utf-8编码格式的文本,因此我们配置为全局的字符编码为utf-8.具体配置如下: 将... -
Eclipse配置Tomcat
2021-01-20 14:13:00Eclipse配置Tomcat Tomcat安装 安装Eclipse 1 添加Tomcat安装目录 step1:windows->Preferences->server->Runtime Envirements ...修改字符编码类型 编写代码 Hello 2.3 运行测试 作者:喝醉酒的小白 -
tomcat 配置-Dfile.encoding
2017-09-18 14:10:30file.encoding跟操作系统默认字符集有关,Windows下默认的是gbk,但我们程序一般IO流中字符编码一般都设置的是utf-8,这样会导致中文乱码。因此需要修改file.encoding为utf-8.如果应用容器是tomcat,可参考如下修改... -
使用tomcat的jndi方式连接mysql的字符编码设置
2019-03-03 15:12:47最近新项目使用tomcat中配置jndi连接mysql的方式,在使用过程中发现查询条件为中文的时候查询不出结果,经过一通折腾,发现是jndi在连接数据库的时候忘记设置字符编码。 修改之后的完整配置如下: <Resource ... -
javaweb项目部署到tomcat下,修改配置文件问题总结
2018-09-06 16:37:58windows自带的记事本编辑工具在保存UTF-8的文件时,会在每个文件开头添加0xefbbbf(十六进制)的字符(也就是带bom的UTF-8, UTF- 8编码的文件中,BOM占三个字节。如果用记事本把一个文本文件另存为UTF-8编码方式的话... -
tomcat+idea统一编码格式
2020-11-24 10:48:39注意:因为windows系统中,其命令行窗口在解码字节数组时,默认使用本地字符集(对于我们就是GBK),所以修改之后在cmd窗口使用命令启动tomcat会出现中文乱码的情况。 修改idea配置编码格式: Help->Edit ... -
linux mysql5.6 编码设置_Linux下MySQL 5.5/5.6的修改字符集编码为UTF8的方法
2021-01-27 05:06:17通常,字符äåö没问题,...要使UTF-8在Java + Tomcat + Linux / Windows + Mysql下工作,需要满足以下条件:配置Tomcat的server.xml 必须配置连接器使用UTF-8编码url(GET请求)参数:在上面的示例中,关键部分是UR... -
idea 下tomcat字符集问题
2018-06-13 11:03:00String类型的参数完全一致,但是md5编码出来的值却不一致,可能是开发环境与测试环境的两者容器的字符集编码不一致,实际中开发环境GBK,测试环境中是UTF-8,将本地tomcat修改成UTF-8即可 经修改后tomcat打印日志时... -
IDEA配置(基本配置、数据库连接、Tomcat部署)
2020-11-05 16:56:45文章目录基本配置一、编辑器字体大小设置二、字符编码设置三、自动编译设置四、主题设置五、JDK设置六、全局配置数据库连接配置Tomcat部署项目发布配置 基本配置 一、编辑器字体大小设置 1.首先打开你的IDEA编辑器,... -
IntelliJ IDEA各种字符编码问题
2016-05-26 17:18:15(1)IntelliJ IDEA 修改Tomcat启动编译字符编码为UTF-8 在tomcat配置页面 VM options:-Dfile.encoding=UTF-8。 (2)IntelliJ IDEA 控制台输出中文乱码问题解决 1、IntelliJ IDEA 安装... -
tomcat keystore
2013-09-27 15:47:181. 配置TOMCAT端口号及字符编码方式 修改默认的端口号,防止和其他进程冲突,如果没有没有冲突,可以不做修改,默认的为8080[w1] vi $HOME/apache-tomcat-6.0.18/conf/server.xml 其中有一段代码,黑色加粗... -
JSP入门以及字符编码问题
2016-07-07 13:09:27get请求:在TOMCAT目录下的conf/server.xml中修改配置文件–>找到标签,往标签中添加属性URIEncoding=”utf-8”,重启服务器。 JSP的九大内置对象 out – JSPWriter对象,用来往网页输出数据。request –... -
idea tomcat项目控制台显示乱码解决
2021-02-17 21:56:26文章目录问题描述解决思路具体代码1 修改idea配置文件-Dfile.encoding=UTF-82 修改tomcat配置 改成自己需要的编码并重启3 修改idea开发配置4 idea Ctrl +Alt + s5 重启idea!!!!! 问题描述 idea 控制台显示乱码 ...