Tomcat 学习 应用

Tomcat 学习 应用

  1. what

     ApacheTomcat®软件是Java Servlet,JavaServer Pages,Java Expression Language和Java WebSocket技术的开源实现。 Java Servlet,JavaServer Pages,Java表达式语言和Java WebSocket规范是根据Java社区流程开发的。
     Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。
     Tomcat为HTML页面服务,而 实际上运行JSP 页面和Servlet。Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。
     Web服务器
    
    • Tomcat(Apache):应用最广的JavaWeb服务器,不完全支持JavaEE规范
    • JBoss(Redhat):支持JavaEE,比较广,EJB容器
    • GlassFish(Orcale):应用相对少
    • Resin(Caucho):支持JavaEE,越来越广
    • Weblogic(Orcale):支持JavaEE,收费,大型项目
    • Websphere(IBM):支持JavaEE,收费,大型项目
  2. why

    web浏览器只能解析HTML资源,而JSP/Servlet动态资源浏览器无法看懂,这时候我们需要像Tomcat这种web服务器将JSP/Servlet动态资源转换成静态资源。

  3. how

     当客户端请求的页面如果是静态网页,服务器会直接将静态网页的内容响应给客户端。如果请求的是动态网页,服务器需要把填充了数据的动态网页转换成静态网页,然后再把转换后的静态网页响应给客户端
     ![Tomcat响应客户端的请求](https://img-blog.csdn.net/20170707003848217?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY29sb250ZW4=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
    
    • Tomcat安装启动

      • http://tomcat.apache.org/官网下载
      • 解压版本,无需安装,一台机器多个
      • bin目录下startup.bat(windows脚本)启动,
        shutdown.bat。 Linux下使用startup.sh和shutdown.sh
    • Tomcat目录结构

      • /bin:存放windows或Linux平台上启动和关闭Tomcat的脚本文件
      • /conf:存放Tomcat服务器的各种全局配置文件,其中最重要的是server.xml和web.xml
      • /doc:存放Tomcat文档
      • /server:包含三个子目录:classes、lib和webapps
      • /server/lib:存放Tomcat服务器所需的各种JAR文件
      • /server/webapps:存放Tomcat自带的两个WEB应用admin应用和 manager应用
      • /common/lib:存放Tomcat服务器以及所有web应用都可以访问的jar文件
      • /shared/lib:存放所有web应用都可以访问的jar文件(但是不能被Tomcat服务器访问)
      • /logs:存放Tomcat执行时的日志文件,查看客户端访问记录等等
      • /src:存放Tomcat的源代码
      • /webapps:Tomcat的主要Web发布目录,默认情况下把Web应用文件放于此目录
      • /work:存放JSP编译后产生的class文件
    • WEB应用的目录结构:假设在$CATALINA_HOME/webapps下有helloword的web应用
      • /helloword:Web应用的根目录,所有的jsp文件和html文件都在此目录下
      • /helloword/WEB_INF:存放该web应用发布时的描述文件web.xml
      • /helloword/WEB_INFhelloword/class:存放各种class文件,Servlet文件也存放于此目录下
      • /helloword/WEB_INF/lib:存放各钟Web应用所需要的jar文件。比如可以存放JDBC驱动程序的JAR文件
    • Tomcat加载类和资源的顺序为(以helloword应用为例)
      • helloword (/webapps/helloword/Web-INF/下的classes,lib子目录中.calss及.jar,仅helloapp可以加载)
      • Bootstrap ($JAVA_HOME/jre/lib/ext/*.jar)
      • System ($CLASSPATH/*.class和CLASSPATH中指定的jar)
      • Common ($CATALINA_HOME/common/下的classes,lib,endores子目录中.class及.jar)
      • Catalina ($CATALINA_HOME/server/下的classes,lib子目录中.calss及.jar,仅Tomcat可以加载)
      • Shared ($CATALINA_HOME/shared/下的classes,lib子目录中.calss及.jar,仅所有Web应用可以加载)
    • * WEB-INF下的资源不允许浏览器直接访问*

    • 访问Web资源
      浏览器输入URL访问
      协议名://域名:端口(80端口为默认端口可省)/路径
      例如:http://localhost:80/index.jsp(Tomcat欢迎页)

    • Tomcat配置

    • tomcat 的端口
      • 修改server.xml
        • port值修改为想要的端口,(修改为80端口可能遇到端口被占用的情况System或IIS占用应先停掉)
        • <Connector port="80" protocol="HTTP/1.1"
          connectionTimeout="20000"
          redirectPort="8443" />
    • tomcat配置项目路劲
      • 默认部署在webapps下
        - 修改server.xml
<Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
            <Context path="hello_word" docBase="D:/helloword"/>
             <!-- 
                 path: 指定当前应用的名称
                 docBase:指定应用的物理路径
                 浏览器访问URL:`http://localhost/hello_word
             -->
</Host>
  • conf/catalana/localhost 下建hello_word.xml文件,内容为:
    • <Context docBase="D:/helloword"/>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值