Tomcat 目录介绍

  • Tomcat 主目录有 bin, conf, lib, logs, temp, webapps, work 7个文件夹
  1. bin 目录

    • 主要用来存放 tomcat 命令
    • .sh 结尾的是 linux 命令
    • .bat 结尾的是 windows 命令
    • startup.sh 用来启动 tomcat
    • shutdown.sh 用来关闭 tomcat
  2. conf 目录
    • 主要用来存放 tomcat 的一些配置文件
    • server.xml 可以设置端口号, 设置域名或 IP, 请求编码等
    • web.xml 可以设置 tomcat 支持的文档类型. MIME 类型, 说明文档内容是什么类型的
    • tomcat-users.xml 可以设置管理 tomcat 的用户与权限
    • 在 Catalina 目录下可以设置默认加载的项目
  3. lib 目录
    • 主要用来存放 tomcat 运行需要加载的 jar 包
  4. logs 目录
    • 主要用来存放 tomcat 在运行过程中产生的日志文件
  5. temp 目录
    • 主要用来存放 tomcat 在运行过程中产生的临时文件
  6. webapps 目录
    • 主要用来存放应用程序(项目)
    • Tomcat 默认访问的是该目录下的 ROOT 目录
  7. work 目录
    • 用来存放 tomcat 在运行时的编译后文件
    • 通过 webapps 中的项目生成的

Tomcat 的启动和关闭

  1. terminal 命令行方式

    • 跳转到 tomcat 的 bin 目录
    • 执行 sudo sh startup.sh 启动 Tomcat
    • 执行 sudo sh shutdown.sh 关闭 Tomcat
  2. 借用 Tomcat Controller 小工具

查看 tomcat 版本

  • 进入 tomcat 的 bin 目录
  • 执行 ./version.sh , 即可查看

在 tomcat 中配置外部应用

  • 把项目放到 Tomcat 之外, 也就是外部应用.

  • 第一种方式: conf/server.xml

    • 打开 server.xml 文件, 找到 元素, 在其中添加 元素,

      代码内容: <Context path="itcast_hello" docBase="C:/hello" />
    • path: 指定当前应用的名称
    • docBase: 指定应用的物理位置
    • 浏览器访问路径: "http://localhost:8080/itcast_hello/index.html"
  • 第二种方式: conf/Catalina/localhost

    • 在该目录下创建 itcast_hello.xml 文件, 在该文件中编写 元素,

      代码内容: <Context docBase="C:/hello" />
    • 新建的文件名: 即是当前应用的名称
    • docBase: 指定应用的物理位置
    • 浏览器访问路径: "http://localhost:8080/itcast_hello/index.html"

conf/context.xml

  • 在 javaweb 项目, 修改 jsp 不需要重启 tomcat 服务器;但是, 修改 Servlet 或 java 类时, 需要重启 tomcat.
  • 项目开发阶段,可以配置 <Context reloadable="true">, 这样, 就不需要重启 tomcat.

conf/server.xml 介绍

<?xml version="1.0" encoding="UTF-8"?>
<Server> <Service name="Catalina"> // 负责 HTTP 协议的连接, 不处理请求 (角色: 饭店服务员)
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"/> // 处理请求, (角色: 大厨)
<Engine name="Catalina" defaultHost="localhost"> // 主机 (可以有多个)
<Host name="localhost" appBase="webapps"
unpachWARs="true" autoDeploy="true"> // 表示项目 (可以有多个)
<Context path="hello" docBase="C:/hello" />
</Host>
</Engine>
</Service>
</Server>

常见问题

问题一:

tomcat 在 eclipse 中能够正常启动, 但是浏览器访问 "http://localhost:8080", 返回 404 错误; 而

手动启动 tomcat 服务器, 访问 "http://localhos:8080" 能正常访问.

解决方法





参考资料:

Tomcat 服务器介绍的更多相关文章

  1. Tomcat 服务器介绍和使用

    服务器的概念和作用: 问题: 学习了 java 编程之后,java 代码的一个很重要的作用就是进行数据的处理,但是目前来说我们运行编写的代码,只有一次性,也就是运行完毕后,如果需要再次运行则需要再次手 ...

  2. Tomcat服务器介绍及配置

    一.Tomcat简介 Tomcat(Apache)是当前应用最广的JavaWeb服务器 1.Tomcat版本: 安装版:需要安装,一般不考虑使用.一个电脑只能安装一个,卸载也比较麻烦! 解压版: 直接 ...

  3. Tomcat服务器与HTTP协议

    Tomcat服务器与HTTP协议 一.  Tomcat服务器 1.tomcat服务器 1.web :网页,它代表的是网络上的资源.(java技术开发动态的web资源,即动态web页面,在Java中,动 ...

  4. java web(一):tomcat服务器的安装和简单介绍,与eclipse关联

    一:下载tomcat安装包和安装 这个百度一下就可以了. 安装完以后进入tomcat的安装路径查看 如图所示:有几个目录简单介绍下 bin目录:   存放运行tomcat服务器的相关命令. conf目 ...

  5. Tomcat服务器的介绍、安装配置

    [1] Tomcat服务器的介绍 1.是一个免费的.开饭源代码的Servlet服务器,目前非常流行. 2.Tomcat服务器是Apache软件基金会的一个顶级项目,由Apache.Sun等公司共同开发 ...

  6. 怎样给Myeclipse配置tomcat服务器

    http://jingyan.baidu.com/article/4853e1e53465271909f72690.html Meclipse是java Web企业级开发中最流行的工具,java we ...

  7. 使用Maven自动部署Java Web应用到Tomcat服务器

    学习如何使用Maven,我推荐一本工具书,<maven the definitive guide>.在这本工具书手中,详细介绍了maven的使用思想,并且提供了从基本到复杂的具体项目应用. ...

  8. Tomcat 服务器性能优化

    简介 考虑一下这种场景,你开发了一个应用,它有十分优秀的布局设计,最新的特性以及其它的优秀特点.但是在性能这方面欠缺,不管这个应用如何都会遭到客户拒绝.客户总是期望它们的应用应该有更好的性能.如果你在 ...

  9. 安装和配置tomcat服务器

    本文主要介绍一下tomcat服务器的安装和配置 1.获取tomcat tomcat服务器可以到它的官方网站(http://tomcat.apache.org)上下载 2.安装tomcat 具体步骤: ...

随机推荐

  1. [svc]salt源码安装软件和yum安装软件

    上面简单列出了源码安装的sls文件书写思路. 涉及到一些固定的思路:如, 1,拷贝 解压安装时候需要依赖tar.gz存在 如果已安装则无需再次安装. 2,启动脚本 加入chk时候需要文件存在,如果已添 ...

  2. dmesg命令应用

    昨晚上线服务的时候,看log偶然发现服务在启动半小时左右就会被supervise重新拉起,也没有core.通过重新启动的服务发现内存飙涨,且持续增加,怀疑是内存打满,进程被kill了. 其实怀疑是正确 ...

  3. C++忽略字符大小写比较

    在项目中用到对两个字符串进行忽略大小写的比较,有两个方法实现 1.使用C++提供的忽略大小写比较函数实现 代码实现: /* 功能 :忽略大小写进行字符串比较 */ #ifdef __LINUX__ # ...

  4. vi/vim 光标移动命令

    vi/vim 光标移动命令 移动光标上:k nk:向上移动n行 9999k或gg可以移到第一行 G移到最后一行下:j nj:向下移动n行左:h nh:向左移动n列右:l nl:向右移动n列 w:光标以 ...

  5. cocos2dx错误收集

    1.读取ccb文件onNodeLoaded调用两次的问题 不小心把cocosbuilder里的控件的Custom class里填了两次自定义类,如下: 结果在onNodeLoaded时调用了两次,结果 ...

  6. Python 中 global、nonlocal的使用

    1.在学习python过程中很重要的一点需要记住:如果在函数内部定义了跟全局变量同名的变量,那么该变量将是局部变量,而全局变量的引用在该函数范围内将失效. x = 9 def a(): x = 10 ...

  7. Unix系统编程()文件空洞

    如果程序的文件偏移量已然跨越了文件结尾,然后再执行IO操作,将会发生什么情况? read调用将会返回0,表示文件结尾.令人惊讶的是,write函数可以在文件结尾后的任意位置写入数据. 从文件结尾后到新 ...

  8. android定义dialog

    对于一些特殊的dialog,我们想自定义一些特殊的样式.这时候假设使用dialog指定的一些功能.是无法实现我们的需求的,这时候就要自己去定制实现dialog了,如今这个样例是我从stackoverf ...

  9. display:flex和display:box布局浏览器兼容性分析

    display:flex和display:box都可用于弹性布局,不同的是display:box是2009年的命名,已经过时,用的时候需要加上前缀:display:flex是2012年之后的命名.在实 ...

  10. Easyui data方法扩展finder

    finder: function(jq, conditions){ if(!$(jq).data("OriginalData")){ $(jq).data("Origin ...