本文共 941 字,大约阅读时间需要 3 分钟。
Controller.java
@RequestMapping("/getRelativeLinks")@ResponseBodypublic EUReturnResult getRelativeLinks(@RequestParam("keyword") String keyword){ return EUReturnResult.ok(Utils.GetLinkResultByBaiduApi(keyword));}
我在获取keyword参数时在Windows下正常但在Linux下为问号(为"??????")
网上的大多数解决方法是:
在apache-tomcat-9.0.21/conf/server.xml里找到以下配置加上URIEncoding="UTF-8",可是对我没用
最终的解决方法:
catalina.sh
if [ -z "$LOGGING_MANAGER" ]; then JAVA_OPTS="$JAVA_OPTS -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager "else JAVA_OPTS="$JAVA_OPTS $LOGGING_MANAGER"fi
将上面的代码注释掉,修改为
if [ -z "$LOGGING_MANAGER" ]; then JAVA_OPTS="$JAVA_OPTS -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8"else JAVA_OPTS="$JAVA_OPTS $LOGGING_MANAGER -Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8"fi
改完后重启Tomcat服务器,既解决了Tomcat日志catalina.out中文乱码("问号?????"),又解决了springmvc参数中文乱码("问号?????")
转载地址:http://cmtgn.baihongyu.com/