tomcat日志乱码问题、页面乱码问题等

tomcat日志乱码问题、页面乱码问题等一、默认解决方法无论Google还是百度,多数解决方法是server.xml设置URIEncoding=“UTF-8”。<Connectorport=”8080″protocol=”HTTP/1.1″connectionTimeout=”20000″redirectPort=”8443″URIEncoding=”UTF-8″/>二、接口乱码在catalina.bat头部增加-Dfile.encoding=UTF-8/bin/catalina.bat

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

一、默认解决方法

无论Google还是百度,多数解决方法是server.xml设置URIEncoding=“UTF-8”。

<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000"

redirectPort="8443" URIEncoding="UTF-8"/>

二、接口乱码

在catalina.bat 头部增加 -Dfile.encoding=UTF-8

/bin/catalina.bat

set JAVA_OPTS=-Xms512m -Xmx4024m -XX:MaxPermSize=1024m -Dfile.encoding=UTF-8

三、tomcat本地日志乱码

这日志是tomcat他自身输出的日志

/conf/logging.properties

java.util.logging.ConsoleHandler.encoding = UTF-8

四、项目日志乱码

项目日志是项目通过logback、sft4j包输出日志的

下面的是针对logback的举例:

在ConsoleAppender(输出日志)里添加日志编码

<encoder>

<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger - %msg%n</pattern>

<charset>GBK</charset>

</encoder>

显示效果

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
	    <encoder>  
		    <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger - %msg%n</pattern>  
		    <charset>GBK</charset>
	    </encoder>  
  </appender>
  
  <logger name="com.tip" level="debug">
    <appender-ref ref="stdout"/>
  </logger>
  
</configuration>

五、页面解析乱码

jsp解析页面乱码,需要在头部添加

<%@ page contentType=”text/html;charset=UTF-8″%>

六、页面传输到后台乱码问题

对POST方式提交的数据做编码转换,对GET方式提交的数据需要在应用服务器中配置URIEncoding=”utf-8″

<filter>

  <description>对POST方式提交的数据做编码转换,对GET方式提交的数据需要在应用服务器中配置URIEncoding="utf-8"</description>

  <filter-name>SpringEncodingFilter</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>

注意:

tomcat7和tomcat8 编码不同的问题

tomcat7和tomcat8 他们两个的默认编码有所改变

* Tomcat7对URI默认编码是ISO-8859-1

* Tomcat8对URI默认编码是UTF-8

引用:

https://blog.csdn.net/u014746965/article/details/50267561

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/189384.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • sql like通配符

    sql like通配符LIKE确定给定的字符串是否与指定的模式匹配。模式可以包含常规字符和通配符字符。模式匹配过程中,常规字符必须与字符串中指定的字符完全匹配。然而,可使用字符串的任意片段匹配通配符。与使用=和!=字符串比较运算符相比,使用通配符可使LIKE运算符更加灵活。如果任何参数都不属于字符串数据类型,Microsoft®SQLServer™会将其转换成字符串数据类型(如果可能)。语法

    2022年7月26日
    4
  • 用计算机制作flash动画教案,Flash动画制作教案

    用计算机制作flash动画教案,Flash动画制作教案以下是出国留学网小编整理的高中信息技术《Flash动画制作》教案,供大家浏览参考。更多相关内容请关注出国留学网教案栏目。高中信息技术《Flash动画制作》教案一:课题:Flash动画制作——绘制七巧板教学目标:熟悉Flash软件的操作界面运用Flash软件绘制七巧板教学重点:绘制七巧板教学难点:如何选用合适的工具正确绘制七巧板教学方法:讲授法,演示法教学过程:一:打开Flash软件“开始”菜单―…

    2022年4月29日
    47
  • 兴师动众解决由cookie引发的400报错问题

    兴师动众解决由cookie引发的400报错问题背景是这样的,做的是一个机票的购票业务,包括了购票(单程购票和往返购票)等功能。购票的航班信息需要从航班搜索页带到下单页,所以在跳转至下单页前将航班信息存在了cookie,用于在下单页展示所选航班信息。遇到的问题是购买单程机票的时候,一切流程正常(从航班查询页,选择需要的购买的航班,进入到下单页,进行下单操作);但是购买往返机票的时候,进入到下单页时,发现下单页所有接口都报了400的错误,继而再访问该网站的其他页面也都报了400的错误。一般来说400报错是因为前后端参数格式或者请求头不一致导致的问题,前.

    2022年6月10日
    34
  • SSDT入门

    SSDT入门一 SSDT 1 SSDT 看来是一个兵家必争之地 无论是安全软件还是恶意代码都在上面做着手脚 图 SystemModule 揭示了系统各模块之间的依赖关系 有所简化 nbsp 从图中可以看出 所有的 Win32API 调用最后都转移到了 ntdll dll 而 ntdll dll 又将其转移到了 ntoskrnl exe ntdll dll 是一个操作系

    2025年8月11日
    2
  • java中字符串分割特殊字符处理_java字符串按照特定字符分割

    java中字符串分割特殊字符处理_java字符串按照特定字符分割String类型的对象在用split()方法进行字符分割的时候常常会遇到用特殊字符进行分割的情况,看JDK知道split()实际上是用的正则实现的分割,当遇到一些用特殊字符作为分割标志的时候,不使用特殊手段就会抛出java.util.regex.PatternSyntaxException异常,比如用java中的运算符号,括号等等这个时候可以使用split(“[*]”)split(“//+”)来…

    2022年9月30日
    3
  • linux中用户态和内核态是什么_用户态内核

    linux中用户态和内核态是什么_用户态内核内核态:操作系统在内核态运行——运行操作系统程序用户态:应用程序只能在用户态运行——运行用户程序当一个进程在执行用户自己的代码时处于用户运行态(用户态),此时特权级最低,为3级,是普通的用户进程运行的特权级,大部分用户直接面对的程序都是运行在用户态。Ring3状态不能访问Ring0的地址空间,包括代码和数据;当一个进程因为系统调用陷入内核代码中执行时处于内核运行态(内核态),此时特权级最高,为0级。执行的内核代码会使用当前进程的内核栈,每个进程都有自己的内核栈。…

    2022年9月17日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号