02_JavaWeb开发之Tomcat服务器

1. web服务器软件

1.1 概述

  • 服务器:安装了服务器软件的计算机,如安装了mysql后的计算机就是mysql服务器

  • 服务器软件:接收用户的请求(如mysql登录,CRUD),处理请求,做出响应

  • web服务器软件:web的服务器软件可以部署web项目,让用户通过浏览器访问这些项目,可以理解为web容器

  • 常见的java的web服务器软件:

    1. webLogic:oracle公司,大型的JavaEE服务器,支持所有的JavaEE规范,收费
    2. webSphere:IBM公司,大型的JavaEE服务器,支持所有的JavaEE规范,收费
    3. JBOSS:JBOSS公司的,大型的JavaEE服务器,支持所有的JavaEE规范,收费
    4. Tomcat:Apache基金组织,中小型的JavaEE服务器,仅仅支持少量的JavaEE规范(servlet/jsp)。开源免费

总结:web服务器软件:部署web项目

1.2 tomcat

是一款web服务器软件

使用:

  1. 下载:http://tomcat.apache.org/

  2. 安装:解压压缩包即可

  3. 卸载:删除目录即可

  4. 文件目录详解:

    bin:存放可执行文件

    conf:存放配置文件

    lib:存放依赖的jar包

    logs:存放日志文件

    temp:存放临时文件

    webapps:存放web项目

    work:存放运行时的数据

在这里插入图片描述

  1. 启动:

    第一步双击运行bin/startup.bat

    第二步浏览器访问:

    http://localhost:8080 访问自己
    http://别人的ip:8080 访问别人

  2. 关闭:

    正常关闭:双击运行bin/shutdown.bat或在打开的窗口按ctrl+c

    强制关闭:直接关闭窗口

  3. 配置:

    一:部署项目的形式,有三种方式:

    方式一:
    直接将项目文件夹放入webapps目录下

    部署完别人的访问方式:

    例如在webapps下放入了Hello文件夹,则只需要在访问tomcat的页面中将访问路径加上/Hello(项目文件名)/项目文件(如hello.html)即可

    其中/Hello是项目的访问路径,也叫虚拟目录

    /hello.html是资源名称

    不能只写虚拟目录不写资源名称!

    当项目中文件很多时存在一个简化部署的方式:

    将项目压缩成一个war包,再将war包放置到webapps目录下。

    war包在webapps下会自动解压缩

    缺点:每次部署项目都要拷贝项目文件,且虚拟目录名称只能是项目名称

    方式二:
    配置conf/server.xml文件

    在<Host>标签体中配置Context标签:

    <Context docBase="D:\hello" path="/hehe" />
    

    其中,docBase为项目存放路径

    path为虚拟目录

    即此时用户在tomcat中将访问路径加上/hehe即可访问项目

    缺点:conf/server.xml是整个Tomcat的核心配置文件,在这里部署项目很不安全,一般不使用这个方法

    方式三:
    在conf\Catalina\localhost下创建xml文件

    在创建的xml文件中部署项目,xml文件命名随意

    在配置文件中编写:

    <Context docBase="D:\hello" />
    

    此时不写path,因为虚拟目录就是xml文件的名称

    推荐使用方式三,是一种热部署的形式,不用用到项目时只要将项目配置部署文件后缀名修改为.xml_bat即可让tomcat访问不到这个项目

    二:项目形式:静态项目与动态项目:

    静态项目中只能存放静态资源

    java动态项目的目录结构:

    – 项目的根目录:

    ​ – WEB-INF目录:

    ​ – web.xml:web项目的核心配置文件

    ​ – classes目录:放置字节码文件的目录

    ​ – lib目录:放置依赖的jar包

    ​ – 静态资源

    动态项目一定有WEB-INF目录

    热部署概念:

    热部署就是正在运行状态的应用,修改了他的源码之后,在不重新启动的情况下能够自动把增量内容编译并部署到服务器上,使得修改立即生效。热部署为了解决的问题有两个, 一是在开发的时候,修改代码后不需要重启应用就能看到效果,大大提升开发效率;二是生产上运行的程序,可以在不停止运行的情况下进行升级,不影响用户使用。

1.2.1 在IDEA中部署tomcat项目:

在运行栏的编辑配置下引入Tomcat

创建Java Enterprise模块,应用程序服务器选择Tomcat,创建完项目后会自动帮我们部署tomcat项目,项目结构示意图:

在这里插入图片描述

其中index.jsp是不写资源名称时默认执行的文件,类似首页

修改为热部署的方法:将执行更新与框架停用时修改为更新资源:

在这里插入图片描述

1.2.2 IDEA与tomcat的相关配置

  1. IDEA会为每一个tomcat部署的项目单独建立一份配置文件

    查看方法:查看控制台的log中的Using CATALINA_BASE

  2. 工作空间项目 和 tomcat部署的web项目

    • tomcat真正访问的是“tomcat部署的web项目”,而"tomcat部署的web项目"对应着"工作空间项目" 的web目录下的所有资源,也就是说tomcat不是直接访问我们工作空间里的项目的
    • WEB-INF目录下的资源不能被浏览器直接访问,也就是说我们的代码不能写在WEB-INF目录下
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值