IDEA部署Tomcat应用所有接口中文乱码
解决问题的思路:
1、分析比对http请求头,contentType等设置
2、前段编码,后端解码,这个方式比较落麻烦,凡是有中文乱码的地方都要进行解决
3、修改Tomcat的默认编码,tomcat8以下默认编码是"iso8859-1",tomcat8默认编码是“UTF-8”
<Connector port="8080" protocol="HTTP/1.1"
URIEncoding="UTF-8"
connectionTimeout="20000"
redirectPort="8443" />
4、查看应用的web.xml默认编码是否是"UTF-8"以下是后端强制转码配置
<filter>
<filter-name>Set Character Encoding</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>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
按照此种写法HttpServletRequest和HttpServletResponse在控制层是不可缺少的,否则有乱码
/**数据透传下发记录*/
@RequestMapping("sendTransparentinfoSendCmd")
public Object sendTransparentinfoSendCmd(TransparentinfoSendlog transparentinfoSendlog,HttpServletResponse response,HttpServletRequest request){
if(transparentinfoSendlog.getVehicleId()==null){
// 未选择车辆
return setReturnMap(false, HttpCode.NO_SELECT_VEHICLE.value());
}
String sim=terminalService.findMobileCodeByVehicleId(transparentinfoSendlog.getVehicleId()+"");
if(sim==null||sim.equals("")){
return setReturnMap(false, HttpCode.ORDER_SEND_NO_SIM.value());
}
if(transparentinfoSendlog.getEnterpriseId()==null){
// 没有公司ID
return setReturnMap(false, HttpCode.BAD_REQUEST_ENTERPRISE.value());
} // 存储数据透传下发发送日志
OrderInfo orderInfo=new OrderInfo();
orderInfo.setId(com.cvnavi.util.WebUtil.getPK());
User user = WebExecutionContext.getUser();
orderInfo.setUserId(user.getId());//设置userId
// 设置指令ID
transparentinfoSendlog.setOrderId(orderInfo.getId());
boolean flag=iTransparentinfoService.insertTransparentinfoSendlog(transparentinfoSendlog);
if(!flag){
return setReturnMap(false, HttpCode.BAD_REQUEST.value());//请求错误
}
// 发送指令到网关
orderInfo=iOrderInfoService.sendTransparentinfoSendlogCmd(orderInfo,transparentinfoSendlog);
if(orderInfo==null){
return setReturnMap(false, HttpCode.BAD_REQUEST.value());//请求错误
}
if("0".equals(orderInfo.getStatus())){
return setReturnMap(false, HttpCode.NO_VEHICLE_ONLINE.value());//车辆不在线
}else if("-1".equals(orderInfo.getStatus())){
return setReturnMap(false, HttpCode.ORDER_SEND_FAIL.value());//指令发送失败
}
return setReturnMap(true, HttpCode.OK.value());
}
IDEA部署Tomcat应用所有接口中文乱码的更多相关文章
- Tomcat 输出日志出现中文乱码
Tomcat 输出日志出现中文乱码 解决方案: 打开到tomcat安装目录下的conf/文件夹 修改logging.properties文件,找到 java.util.logging.ConsoleH ...
- Tomcat JSP提交参数中文乱码问题解决
参考: http://blog.csdn.net/error_case/article/details/8250209 中文乱码是个老生常谈的问题,一般情况下,只要保证页面,web服务器,数据库的编码 ...
- linux服务器上tomcat日志中的中文乱码
转: 修改tomcat应用日志默认编码格式 前言 今天开发跟我说tomcat日志中的中文不能正常显示,根据以往的经验,我觉得可能跟服务器的编码有关,于是尝试各种方法,但还是没能解决问题. 后来我突然想 ...
- 【已解决】关于IDEA中 Tomcat 控制台打印日志中文乱码的解决
在 Idea 上面使用 Tomcat 时,发现控制台打印信息的时候,出行中文乱码问题; 可以通过以下几种解决办法 1:在-Dfile.encoding=UTF-8 在vm中设置编码方式 2.然后从Fi ...
- delphi请求http接口中文乱码问题
请求http接口的时候参数值是中文乱码: http接口一般都是由java,php以及C#开发而成的,乱码的原因也是由于编码的问题,一般传递数据的都是utf8,然后传递的时候都会urlEcode 那么d ...
- tomcat控制台运行窗口中文乱码
启动tomcat时出来的运行窗口中文乱码, 如图所示:看得有点不舒服 解决方法:找到Tomcat安装路径下的 /conf/logging.properties 文件 文件末尾添加语句: java.ut ...
- tomcat启动命令行中文乱码
1.找到${CATALINA_HOME}/conf/logging.properties 2.添加语句:java.util.logging.ConsoleHandler.encoding = GBK ...
- IDEA Tomcat 日志和输出中文乱码问题
说明:该方法是在网上查找的其他方法均无效的情况下自己摸索出的设置.既然别人有效的设置在我这里无效,那么以下设置自然有可能无效.建议综合多个搜索结果进行尝试. 仅需要进行两处设置 1. 更改 IDEA ...
- tomcat 启动窗口 名称 中文乱码
随机推荐
- 【模拟】 Codeforces Round #434 (Div. 1, based on Technocup 2018 Elimination Round 1) C. Tests Renumeration
题意:有一堆数据,某些是样例数据(假设X个),某些是大数据(假设Y个),但这些数据文件的命名非常混乱.要你给它们一个一个地重命名,保证任意时刻没有重名文件的前提之下,使得样例数据命名为1~X,大数据命 ...
- 随机数选择器 Exercise07_13
import java.util.Scanner; /** * @author 冰樱梦 *时间:2018年下半年 *题目:随机数选择器 */ public class Exercise07_13 { ...
- Codeforces Round #345 (Div. 1) D. Zip-line 上升子序列 离线 离散化 线段树
D. Zip-line 题目连接: http://www.codeforces.com/contest/650/problem/D Description Vasya has decided to b ...
- Unity 3D 之Playerprefs
Unity3d提供了一个用于本地持久化保存与读取的类——PlayerPrefs.工作原理非常简单,以键值对的形式将数据保存在文件中,然后程序可以根据这个名称取出上次保存的数值. 一.PlayerPre ...
- Server-side Query interception with MS SQL Server
up vote15down votefavorite 5 I'm researching into intercepting queries that arrive at the SQL Serv ...
- 邮件发送过去24小时的自增长事件(MSSQL)
此脚本需要启用DBMail以支持邮件的发送.可设为每日运行的JOB以追踪自增长事件,以便做出适当的调整. -- Email the Auto-growth events that have occur ...
- loadrunner11操作手册
一:操作 或者 增加用户数的方法 一:仅对单个场景增加用户数 二:同时对多个场景增加用户数 第一步: 第二步: 二:脚本编写示例 Action() { int nHttpRetCode; web_re ...
- Unity3d-Socket之龙一编年史network.dll分析(2)-> CNetLogger
今天呢,我们来学习下network.dll里面的CNetLogger类. 顾名思义,这个类主要是debug用的,也许有些人会问了,干嘛要自己封装个debug,直接用unity自带的debug不就好了吗 ...
- BZOJ3157: 国王奇遇记 & 3516: 国王奇遇记加强版
令\[S_i=\sum_{k=1}^n k^i m^k\]我们有\[\begin{eqnarray*}(m-1)S_i & = & mS_i - S_i \\& = & ...
- xss测试用例小结
<script>alert("跨站")</script> (最常用) <img scr=javascript:alert("跨站" ...