5.3 Java Web应用目录结构

简介: web模块, 也就是 Servlet 规范中的web应用。在Java EE架构中, web模块(web module) 是最小的web部署单元。 其中包含web组件以及静态资源; 如图片之类的静态资源也被称为 web资源。

web模块, 也就是 Servlet 规范中的web应用。在Java EE架构中, web模块(web module) 是最小的web部署单元。 其中包含web组件以及静态资源; 如图片之类的静态资源也被称为 web资源

除web组件和web资源以外, web模块中还可以包含其他文件, 例如服务端运行所需的工具类,JAR 包等等。

web模块有特定的结构。顶层目录对应Web应用的 document root. 可以存放 HTML页面, 静态web资源等等。

根目录下面包含一个 WEB-INF 文件夹, 其中可以包含以下文件和目录:

  • classes 目录, 存放服务端相关的 class: 如 servlet、bean, 工具类, 以及运行时资源, 如XML,配置文件等等。
  • lib 目录, 其中存放各种 JAR 文件
  • web.xml 等部署说明信息(Deployment descriptors)

使用 JavaServer Face 技术时, 如果需要指定特别的安全信息, 或者覆盖 web component 上的注解配置, 则需要通过 web.xml 文件来指定。

根据需要, 在根目录和 WEB-INF/classes/ 下面, 可以添加文件夹或package。

web模块可以解压为文件夹来部署, 也可以部署为单个WAR包(Web Archive), 本质上WAR包是一个ZIP格式的JAR文件. 因为WAR里面的内容和常规的JAR不同, 所以使用 .war 后缀来区分。 web模块具有可移植性(portable); 能部署到符合Java Servlet规范的各种web容器里。

web模块结构。根目录下面包含 WEB-INF和web页面/目录。WEB-INF下面包含 lib 和 classes 目录。

└── index.jsp
└── WEB-INF
     └── web.xml
     └── lib
           └── xxx-1.0.jar
     └── classes
           └── com/package/xxx/XXXServlet.class
           └── xxx.properties

原文链接: https://docs.oracle.com/javaee/7/tutorial/packaging003.htm

翻译日期: 2018年1月21日

翻译人员: 铁锚 http://blog.csdn.net/renfufei

目录
相关文章
|
7天前
|
SQL Java
20:基于EL与JSTL的产品管理页-Java Web
20:基于EL与JSTL的产品管理页-Java Web
20 5
|
1天前
|
传感器 机器人 Java
使用Java构建机器人应用
使用Java构建机器人应用
5 0
|
1天前
|
分布式计算 负载均衡 Java
构建高可用性Java应用:介绍分布式系统设计与开发
构建高可用性Java应用:介绍分布式系统设计与开发
7 0
|
1天前
|
前端开发 JavaScript Java
Java与Web开发的结合:JSP与Servlet
Java与Web开发的结合:JSP与Servlet
7 0
|
1天前
|
设计模式 算法 Java
设计模式在Java开发中的应用
设计模式在Java开发中的应用
8 0
|
2天前
|
分布式计算 Java 大数据
Java语言主要应用领域
【5月更文挑战第7天】Java在嵌入式系统中以低至130KB的占用展现可靠性,实现“一次编写,到处运行”。在大数据领域,Java通过Hadoop、Hbase、Accumulo和ElasticSearch等工具发挥关键作用。Java也是Eclipse、IntelliJ IDEA和NetBeans等开发工具的基础。广泛应用于电商网站和金融服务器系统,即便在J2ME式微后,仍能在部分低端手机中找到其踪影。
14 4
|
2天前
|
算法 Java 机器人
Java在嵌入式领域的应用
【5月更文挑战第7天】Java广泛应用于消费产品(如智能电视、机顶盒、数码相机)、工业控制(PLC、DCS、FCS)、通信(交换机、路由器、基站)、智能仪器、机器人、计算机外部设备、军事电子及太空科学,涵盖从家用到高科技领域的嵌入式系统开发。
14 4
|
2天前
|
机器学习/深度学习 人工智能 分布式计算
JAVA编程语言在人工智能领域的应用
Java是由Sun Microsystems(已被Oracle收购)于1995年推出的一种跨平台编程语言。它具有面向对象、可移植、高效和安全等特性,成为了广泛应用于企业级应用开发的编程语言之一。
43 21
|
5天前
|
移动开发 Java Android开发
构建高效Android应用:探究Kotlin与Java的性能对比
【5月更文挑战第4天】在移动开发的世界中,性能一直是衡量应用质量的重要指标。随着Kotlin的兴起,许多Android开发者开始考虑是否应该从传统的Java迁移到Kotlin。本文通过深入分析两者在Android平台上的性能差异,帮助开发者理解Kotlin在实际项目中的表现,并提供选择编程语言时的参考依据。
20 5
|
7天前
|
安全 IDE Java
Java串口通信技术探究2:RXTX库单例测试及应用
Java串口通信技术探究2:RXTX库单例测试及应用
25 4