# tomcat源码学习 **Repository Path**: xuehuaangel/tomcat_source_code_learning ## Basic Information - **Project Name**: tomcat源码学习 - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-07-02 - **Last Updated**: 2021-05-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 这是我学习tomcat源码的项目 同时在这里使用md文件写一些笔记,笔记位于相关的目录之下 ### --这里使用的是tomcat源码 我会添加自己的注释和笔记文件 现在介绍如何将tomcat导入到IDEA之中 + 1.首先,下载源码 + 2.maven项目导入 + 3.运行位于org.apache.catalina.startup下的Bootstrap即可 需要jdk1.8环境 之后的jdk移除了部分需要的jar包 2020年7月2日20:05:19 ## 途中遇到的BUG均记录于此 + 1>日志乱码问题 + 现象: 默认的日志会乱码,运行时会出现即使是UTF-8依旧有的问题虽然系统的默认编码和配置文件中的一致,但是依旧会导致部分乱码问题 + 导致原因 : tomcat默认使用了iso-8859-1的方式来进行读取properties文件,在日志运行的时候, PropertyResourceBundle类的lookup的map集合中,集合中的数据已经乱码了.由于使用了ResourceBundle类来国际化代码 + 解决方案 : 1>修改propertiess文件 2>修改相关的配置读取类 参考:https://blog.csdn.net/zhoutaoping1992/article/details/104751705 + 备注: 1> 在修改之后依旧会有部分方法乱码,监听打印日志的方法增添修改方法就可以,不可以修改位于org.apache.tomcat.util.res下的StringMarnger类,会导致其他正确的日志也乱码 + 2>JSP页面乱码 + 现象:默认打开的JSP页面错误,出现乱码问题 + 3> 一个或多个listeners启动失败,更多详细信息查看对应的容器日志文件 + 现象: 控制台报错--一个或多个listeners启动失败,更多详细信息查看对应的容器日志文件 访问文件后发现: ![Image test](./笔记/img/QQ图片20200710220429.png)