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
相关推荐
程序员清风4 分钟前
快手二面:乐观锁是怎么用它来处理多线程问题的?
java·后端·面试
一线大码19 分钟前
SpringBoot 优雅实现接口的多实现类方式
java·spring boot·后端
花伤情犹在24 分钟前
Java Stream 高级应用:优雅地扁平化(FlatMap)递归树形结构数据
java·stream·function·flatmap
yaoxin52112337 分钟前
212. Java 函数式编程风格 - Java 编程风格转换:命令式 vs 函数式(以循环为例)
java·开发语言
摇滚侠1 小时前
Spring Boot 3零基础教程,WEB 开发 Thymeleaf 属性优先级 行内写法 变量选择 笔记42
java·spring boot·笔记
滑水滑成滑头1 小时前
**发散创新:多智能体系统的探索与实践**随着人工智能技术的飞速发展,多智能体系统作为当今研究的热点领域,正受到越来越多关注
java·网络·人工智能·python
摇滚侠1 小时前
Spring Boot 3零基础教程,WEB 开发 Thymeleaf 总结 热部署 常用配置 笔记44
java·spring boot·笔记
十年小站1 小时前
一、新建一个SpringBoot3项目
java·spring boot
2401_841495641 小时前
【数据结构】最长的最短路径的求解
java·数据结构·c++·python·算法·最短路径·图搜索
麦麦鸡腿堡1 小时前
Java的代码块介绍与快速入门
java·开发语言