Java Web(1) Tomcat

[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的用户与权限

修改端口号



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文件




  
  
             haha.jsp
  


你可能感兴趣的:(Java Web(1) Tomcat)