【tomcat】tomcat学习笔记

文章目录

1.tomcat乱码问题

1.1 linux乱码中文显示乱码问号问题

启动文件中catalina.sh添加

xml 复制代码
JAVA_OPTS="$JAVA_OPTS -Djavax.servlet.request.encoding=UTF-8 -Dfile.encoding=UTF-8 -Duser.language=zh_CN -Dsun.jnu.encoding=UTF-8"

(最好单独放在一个脚本 setenv.sh中,要chmod +777 setenv.sh )

1.2windows乱码

1.2.1 方式一

1.2.2方式二




1.3 Idea中运行tomcat乱码问题

同样修改java.util.logging.ConsoleHandler.encoding = GBK

2. 获取tomcat启动端口号

java 复制代码
MBeanServer beanServer = ManagementFactory.getPlatformMBeanServer();
try {
    QueryExp protocol = Query.match(Query.attr("protocol"), Query.value("HTTP/1.1"));
    ObjectName name = new ObjectName("*:type=Connector,*");
    Set<ObjectName> objectNames = beanServer.queryNames(name, protocol);
    for (ObjectName objectName : objectNames) {
        String catalina = objectName.getDomain();
        if ("Catalina".equals(catalina)) {
            port=objectName.getKeyProperty("port");
        }
    }
} catch (MalformedObjectNameException e) {
    e.printStackTrace();
}    

3. idea运行tomcat 的配置问题

4.dockerfile构建tomcat镜像问题

4.1 替换端口号

RUN sed -i 's|"8080"|"6098"|g' server.xml

5.启动多个tomcat方法

xml 复制代码
tomcat服务器需配置三个端口才能启动,安装时默认启用了这三个端口,当要运行多个tomcat服务时需要修改这三个端口,不能相同。
端口一:
修改Shutdown远程停服务端口(默认为8005端口) <Server port="19080" shutdown="SHUTDOWN">

端口二:
修改http访问端口(默认为8080端口),配置文件为tomcat\ conf\service.xml
<Connector port="9080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> 
<!-- A "Connector" using the shared thread pool-->
<!-- <Connector executor="tomcatThreadPool" port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />


端口三:(如果没有用到,可以不修改,因为有点版本是注释的)
修改AJP端口(默认为8009端口) <!-- Define an AJP 1.3 Connector on port 8009 --> 
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

6.修改tomcat JAVA_HOME环境变量

bin目录下setclasspath.sh

默认配置为

自定义配置后(如果没有配置系统环境变量的话)

7. 启动报错

https://www.jiweichengzhu.com/article/4920ecca8a784a4b92d449afe3fe76e5

去logs中找到localhost日志;

发现这个包版本不对,更新包.

8.jdk版本对应

JDK版本在官方对应的版本号列表如下:

xml 复制代码
JDK 8.0 = 52,
JDK 7.0 = 51,
JDK 6.0 = 50,
JDK 5.0 = 49,
JDK 1.4 = 48,
JDK 1.3 = 47,
JDK 1.2 = 46,
JDK 1.1 = 45
相关推荐
小宋加油啊6 分钟前
机械臂抓取物体 PVN3D算法调研学习
学习·算法·3d
Xzh04231 小时前
AI Agent 学习路线(Java 后端方向)
java·人工智能·学习
Cloud_Shy6181 小时前
解读《Effective Python 3rd Edition》:从练气到老魔(第五章 Item 33 - 35)
开发语言·人工智能·笔记·python·学习方法
做cv的小昊1 小时前
计算机图形学:【Games101】学习笔记08——光线追踪(辐射度量学、渲染方程与全局光照、蒙特卡洛积分与路径追踪)
图像处理·笔记·学习·计算机视觉·游戏引擎·图形渲染·概率论
星恒随风1 小时前
C++ 类和对象入门(五):初始化列表、explicit 和 static 成员详解
开发语言·c++·笔记·学习·状态模式
sensen_kiss3 小时前
CPT304 SoftwareEngineeringII 软件工程 2 Pt.8 软件测试 (Software Testing)(上)
学习·软件工程
力学与人工智能3 小时前
PPT分享 | 洛桑联邦理工学院魏震:深度几何学习在工业设计优化中的应用
学习·优化·工业设计·深度几何学习·洛桑联邦理工学院
sensen_kiss5 小时前
CPT304 SoftwareEngineeringII 软件工程 2 Pt.9 软件测试 (Software Testing)(下)
学习·软件工程
wu_ye_m5 小时前
学习c语言第35天 函数声明和定义
c语言·开发语言·学习
清辞8535 小时前
Coze从入门到实战---第一、二章
大数据·人工智能·学习·语言模型