tomcat入门介绍

tomcat目录

  • 解压后,可以看到tomcat有以下目录
/bin - 启动、关闭和其他脚本
  • *.sh后缀是linux下的脚本文件
  • *.bat后缀windows系统下的脚本文件
  • startup.sh startup.bat是tomcat启动脚本
  • shutdownsh shutdown.bat是tomcat停止脚本
  • version.sh version.bat查看tomcat版本信息
  • setclasspaty.sh setclasspath.bat设置tomcat的class路径,和jdk路径
  • setenv.sh setenv.bat文件中没有,需要的话自己创建个就行,tomcat参数设置文件,tomcat8以后,推荐这种方式配置(linux下配置)
shell 复制代码
export CATALINA_OPTS="$CATALINA_OPTS -server -Xms2048m -Xmx2048m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/../apache-tomcat-8.5.91/logs/oom.hprof"
/conf - 配置文件和相关 DTD。这里最重要的文件是server.xml。它是容器的主要配置文件。
  • server.xml文件
xml 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<!-- 停止端口  -->
<Server port="8005" shutdown="SHUTDOWN">
  <Listener className="org.apache.catalina.startup.VersionLoggerListener" />
  <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
  <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
  <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
  <GlobalNamingResources>
    <Resource name="UserDatabase" auth="Container"
              type="org.apache.catalina.UserDatabase"
              description="User database that can be updated and saved"
              factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
              pathname="conf/tomcat-users.xml" />
  </GlobalNamingResources>
  <!-- 代表一个Engine元素以及一组与之相连的Connector元素 -->
  <Service name="Catalina">
    <!-- 代表了外部客户端发送请求到特定Service的接口;同时也是外部客户端从特定Service接收响应  -->
    <!-- 8080访问端口 protocol协议,默认的nio协议 connectionTimeout表示http请求连接的超时时间 redirectPort表示要求https如果是http的话强制重定向到8443 -->
    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443"
               maxParameterCount="1000"
               />
    <Engine name="Catalina" defaultHost="localhost">
      <Realm className="org.apache.catalina.realm.LockOutRealm">
        <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
               resourceName="UserDatabase"/>
      </Realm>
      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log" suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />
      </Host>
    </Engine>
  </Service>
</Server>
/logs - 默认情况下日志文件位于此处
/webapps - 网络应用程序部署位置

执行,双击startup.sh

  • 修改日志编码

  • 调整完日志编码之后,再次重启tomcat
  • 关闭的时候直接关掉窗口,或者执行,bin目录下shutdown.bat
  • 重启之后可以看到日志正常,通过启动日志可以看到一些配置信息
  • 启动后通过http://localhost:8080/地址访问tomcat
相关推荐
文丑颜不良啊25 分钟前
LeetCode2901~2920题目解析
java·leetcode
码云社区27 分钟前
能碳管理系统开发要关注什么?能源数据、统计口径与AI分析的衔接
java·人工智能·ai·能源·能源管理系统·能碳管理系统·能碳管理系统源码
Flynn Liang1 小时前
Agentic 工作流:子代理、Supervisor 与人工介入
java·langchain·多智能体·supervisor·agentic·langchain4j
xys_6781 小时前
JavaSE通关手册:运算符
java·java-ee
jyOverQ2 小时前
从零学 JVM(七):垃圾收集器详解——Serial、ParNew、Parallel、CMS 与 G1
java·jvm
liangbo72 小时前
Spring系列11:切点表达式
java·spring
3095566662 小时前
股票接口返回 404 与空数组的排查笔记:证书状态与级别参数
java·笔记·python·ios·iphone·股票数据api·股票数据接口
nice_lcj5202 小时前
MySQL 存储引擎入门:InnoDB 和 MyISAM 到底怎么选
java·数据库·mysql·面试·innodb·存储引擎·myisam
文丑颜不良啊3 小时前
LeetCode2861~2880题目解析
java·leetcode
装不满的克莱因瓶3 小时前
设计模式之策略模式核心概念和应用场景
java·后端·设计模式·架构·系统架构·策略模式