美文网首页java web
Java Web(1) Tomcat

Java Web(1) Tomcat

作者: loserwang_3030 | 来源:发表于2020-07-09 22:29 被阅读0次

    [TOC]

    1. J2ee

    J2EE是Java2平台企业版(Java 2 Platform,Enterprise Edition),它的核心是一组技术规范与指南,提供基于组件的方式来设计、开发、组装和部署企业应用。J2EE使用多层分布式的应用模型,适用于创建服务器应用程序和服务

    1.1 J2EE的四层模型

    J2EE使用多层的分布式应用模型,应用逻辑按功能划分为组件,各个应用组件根据他们所在的层分布在不同的机器上。
    J2EE 典型的四层结构:


    J2EE.png
    • 运行在客户端机器上的客户层组件
    • 运行在J2EE服务器上的Web层组件
    • 运行在J2EE服务器上的业务逻辑层组件
    • 运行在EIS服务器上的企业信息系统(Enterprise information system)层软件
    J2EE结构

    1.2 J2EE组件

    2EE平台由一整套服务(Services)、应用程序接口(APIs)和协议构成,它对开发基于Web的多层应用提供了功能支持,下面对J2EE中的13种技术规范进行简单的描述(限于篇幅,这里只能进行简单的描述):

    • Servlet:web服务器小程序。
    • JSP: 服务器页面
    • JDBC:数据库交互模块。
    • XML:XML交互模块。
    • EJB:企业级Java Bean
    • RMI:远程调用。
    • JNDI:目录服务
    • JMS: 消息服务。
    • JTA:事务管理。
    • JavaMail:发送/接受Email。
    • JAF: 安全框架
    • CORBA:CORBA集成。
    • JTS:CORBA事务监控。

    2. tomcat

    Apache Tomcat是由Apache Software Foundation(ASF)开发的一个开源Java WEB应用服务器。

    2.1 Tomcat与其他web模块的关系

    2.1.1 Tomcat与Java SE

    Tomcat是用Java语言编写的,需要运行在Java虚拟机上,所以一般需要先安装JDK,以提供运行环境。

    2.1.2 Tomcat与Java EE

    • J2EE是一组技术规范与指南,具体实现由软件厂商决定。
    • Tomcat实现了几个Java EE规范,包括Java ServletJava Server Pages(JSP),Java Expression LanguageJava WebSocket等,这些是都下载Tomcat安装包默认提供的

    2.1.3 Tomcat与Servlet/编程开发

    Tomcat实现的几个Java EE规范,其中最重要的是Servlet,因为实现了Servlet规范,所以Tomcat也是一个Servlet容器,可以运行我们自己编写的Servlet应用程序处理动态请求。
    平时用的Struts2、SpringMVC框架就是基于Servlet,所以我们可以在这些框架的基础上进行快速开发,然后部署到Tomcat中运行。

    tomcat.png

    2.1.4 Tomcat与WEB/HTTP请求

    Tomcat的(HTTP类型)Connector组件实现了HTTP请求的解析,Tomcat通过Connector组件接收HTTP请求并解析,然后把解析后的信息交给Servlet处理:

    • 对于静态资源(html/js/jpg等)请求,Tomcat提供默认的Servlet来处理并响应;
    • 对于动态请求,可以映射到自己编写的Servlet应用程序来处理。

    2.1.5 Tomcat与Nginx/Apache的应用架构

    Nginx、Apache都是目前主流的Web服务器,也可以作为反向代理服务器;它们在处理大量并发的请求连接、连接会话管理和静态内容请求等方面相比Tomcat更具优势。
    如果是静态请求,则转发到另外的Nginx WEB服务器上,返回静态内容;如果是动态请求,则转发到后面的Tomcat应用服务器,处理动态请求的业务逻辑。

    2.2 tomcat服务器目录结构

    tomcat目录

    2.2.1 /bin

    存放各种平台下用于启动和停止Tomcat的命令文件

    /bin

    2.2.2 /conf

    存放Tomcat服务器的各种配置文件

    /conf
    • server.xml 可以设置端口号、设置域名或IP、默认加载的项目、请求编码
    • web.xml 可以设置tomcat支持的文件类型
    • context.xml 可以用来配置数据源之类的
    • tomcat-users.xml 用来配置管理tomcat的用户与权限

    修改端口号

    <!-- 修改 /conf/server.xml -->
    <Connector port="8080"
        protocol="HTTP/1.1"
        connectionTimeout="20000"
        redirectPort="8443"
    />
    

    2.2.3 /lib

    存放Tomcat服务器所需的各种JAR文件

    2.2.4 /logs

    存放Tomcat的日志文件

    2.2.5 /temp

    Tomcat运行时用于存放临时文件

    2.2.6 /webapps

    当发布Web应用时,默认会将Web应用的文件发布到此目录下,当然,你也可以把应用程序放置在磁盘的任意位置,在配置文件中映射好就行。

    2.2.7 /work

    Tomcat把由JSP生成的servlet放于此目录下

    2.3 Tomcat使用流程

    • 在 /webapps 创建项目目录
    • 编写index.jsp
    • 创建WEB-INF目录(包含classes目录和lib目录,web.xml)
    • 测试运行

    3. WEB-INF目录结构

    WEB-INF 是 Java 的WEB应用的安全目录。所谓安全就是客户端无法访问,只有服务器可以访问的目录。

    组织结构 描述
    /WEB-INF WEB应用的安全目录,用于存放配置文件
    /WEB-INF/web.xml web.xml是“部署描述符文件”,是该Web项目核心配置文件
    /WEB-INF/classes 存放编译后的classes文件
    /WEB-INF/lib 用于存放web应用依赖的jar文件
    <?xml version="1.0" encoding="UTF-8"?>
    
    <web-app xmlns="<http://xmlns.jcp.org/xml/ns/javaee>"
      xmlns:xsi="<http://www.w3.org/2001/XMLSchema-instance>"
      xsi:schemaLocation="<http://xmlns.jcp.org/xml/ns/javaee>
                          <http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd>"
      version="4.0"
      metadata-complete="true">
    
      <!-- 默认首页-->
      <welcome-file-list>
                 <welcome-file>haha.jsp</welcome-file>
      </welcome-file-list>
    
    </web-app>
    

    相关文章

      网友评论

        本文标题:Java Web(1) Tomcat

        本文链接:https://www.haomeiwen.com/subject/fckpqktx.html