`
hbkh2000
  • 浏览: 203718 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Java EE中的Web项目的目录文件结构

 
阅读更多

Java EE 中的Web项目的目录文件结构
J2EE规范要求java web项目要满足基本的结构)

按照 Java EE 规范的规定,一个典型的Web 应用程序有四个部分:
1.
公开目录

2. WEB-INF/web.xml
文件,发布描述符(必选)

3. WEB-INF/classes
目录,编译后的Java 类文件(可选)

4. WEB-INF/lib
目录,Java 类库文件(*.jar)(可选)

公开目录存放所有可以被用户的访问的资源, 包括 .html, .jsp, .gif, .jpg, .css, .js, .swf等等。

WEB-INF
目录是一个专用区域, 容器不能把此目录中的内容提供给用户。这个目录下的文件只供容器使用, 里面包含不应该由客户直接下载的资源, 例如: Servlet(这些组件包括应用程序逻辑以及对其他资源如数据库的可能访问), Web 应用程序中servlet 可直接访问的其他任何文件, 在服务器方运行或者使用的资源(Java 类文件和供servlet 使用的JAR 文件), 由您的应用程序生成的临时文件, 发布描述符以及其它任何配置文件。这些资源是专用的, 因此只能由它们自己的Web 应用程序及容器访问。特别地, JSP/Servlet 程序文件也能通过ServletContext 访问到这个目录下的文件, 例如JSP 中可以通过application.getRealPath(“/WEB-INF/web.xml”) 访问到发布描述符文件的路径。 Web 容器要求在你的应用程序中必须有WEB-INF 目录。注意: 如果你的Web 应用程序中没有包含这个目录, 它可能将无法工作(这是因为不同的服务器对此情况的处理不甚一致,所以有时候也能工作)。


WEB-INF
中包含着发布描述符, 一个classes 目录和一个lib 目录, 以及其它内容。发布描述符(deployment descriptors)J2EE Web 应用程序不可分割的一部分(也就是说是它的最小部分, 必不可缺的一部分)。它们在应用程序发布之后帮助管理 Web 应用程序的配置。对于 Web 容器而言, 发布描述符是一个名为web.xml XML 文件, 存储在Web 应用程序的 /WEB-INF 目录下。


发布描述符有多种用途
:
Servlet Web 应用程序提供初始化参数 这使我们的Web 应用程序中的硬性编写的代码的初始化值更少。例如常见的 <param-name>, <param-value>标记, 就可以为Servlet 提供参数, 这个参数可以在init() 方法中加载。 Struts ActionServlet 也是通过这种方式来找到它们需要的配置文件struts-config.xml 的位置, 从而加载并分析它,来初始化Struts 框架用到的各种FromBean, Action, Forward 等。

• Servlet/JSP
定义可以为 Web 应用程序中的每个Servlet 或者预编译的JSP 网页提供定义。包括 Servlet/JSP 的名字, Servlet/JSP 的类以及一个可选的描述。

• Servlet/JSP
映射 Web 容器使用这些信息把进入请求映射到servlet JSP 网页。

• MIME
类型由于每个 Web 应用程序可以包含多种内容类型, 因此我们可以在发布描述符中为每一种类型指定MIME 类型。

安全性 我们可以使用发布描述符来管理应用程序的访问控制。例如, 可以指定我们的Web 应用程序是否需要登录, 如果需要的话, 应该使用什么登录页面, 以及用户会作为何种角色。发布描述符还可以用来自定义其他元素, 包括欢迎网页, 出错网页, 会话配置。classes 目录用于存储编译过的servlet 及其它程序类, 例如JavaBean。如果一个程序有打包的JAR 文件(例如一个第三方API 打包成了一个JAR 文件, Struts 框架的类库

struts.jar, MySQL
的数据库JDBC 驱动程序文件mysql-connector-java-3.1.11-bin.jar ),那么它们可以被复制到lib 目录中(如果解压缩这些压缩包的话, 请将它们复制到classes 目录中) Web 容器使用这两个目录来查找servlet 及其他相关类, 也就是说, 容器的类装入器会自动查看classes 目录, 以及lib 目录下的JAR 文件。这就意味着你不需要明确的把这些类和JAR 文件添加到CLASSPATH 中。 Web 容器自动将这两个目录中的文件加入Web应用的类路径中。

分享到:
评论
2 楼 huanlegu0426 2015-04-16  
完善自我 写道
对WEB-INF文件夹有了进一步的了解,谢谢博主分享。

1 楼 完善自我 2012-10-08  
对WEB-INF文件夹有了进一步的了解,谢谢博主分享。

相关推荐

    Java EE Web编程(Eclipse平台)源文件

    8. **JNDI(Java Naming and Directory Interface)**:Java EE中的命名和目录接口,用于查找和管理资源,如数据库连接池。 9. **EJB(Enterprise JavaBeans)**:用于构建企业级应用的组件模型,包括Session Beans...

    Eclipse JAVA EE 创建Web工程

    在Eclipse中创建Java EE Web工程是开发基于Java的Web应用程序的重要步骤。这个过程涉及到配置开发环境、设置项目属性以及创建必要的文件结构。下面将详细解释如何在Eclipse中进行这些操作。 首先,确保你已经安装了...

    Java ee课程设计---智能XX管理系统(基于JAVA EE的Java web项目)

    在这个Java EE课程设计中,我们将探讨如何利用Java技术栈来创建一个智能XX管理系统,这是一个基于Java Web的项目,其核心技术和工具包括SQL Server数据库、Java Beans组件、以及Servlet技术。 首先,**SQL Server...

    Java+Web项目企业事务管理系统源码 (1)Java源码

    2. **Web项目结构**:一个典型的Java Web项目通常包含Web-INF目录、src目录、lib目录等。Web-INF下有web.xml(部署描述符),控制项目的启动和配置。src目录存储Java源代码,包括业务逻辑、控制器和服务层等。 3. *...

    Java EE期末考试试题

    1. **Servlet**: Servlet是Java EE中的核心组件,它是一个Java类,用于扩展服务器的功能。Servlet接口提供处理HTTP请求和响应的方法,是动态网页和Web服务的基础。在期末考试中,你可能需要了解Servlet的生命周期、...

    Java EE: XML Schemas for Java EE Deployment Descriptors

    在Java EE环境中,`web.xml`文件是另一个关键的部署描述符,它包含了Web应用的整体配置,包括Servlet、过滤器和监听器的定义。而`web-jsptaglibrary_2_1.xsd`则更专注于JSP标签库的配置,是`web.xml`的一个补充。 ...

    JAVA EE开发所要用到的dtd文件

    DTD(Document Type Definition)在Java EE中扮演着重要的角色,它是XML文档的结构定义,确保了XML文件的语法正确性和一致性。 Java EE开发中,DTD文件主要用于描述和验证XML配置文件的结构。例如,以下是一些常见...

    精通Java EE项目案例--基于Eclipse Spring Struts Hibernate (例子中的初始化SQL)

    本资源“精通Java EE项目案例--基于Eclipse Spring Struts Hibernate (例子中的初始化SQL)”正是针对这样的集成环境提供了一套完整的数据库初始化语句,帮助开发者快速构建一个功能完善的Web应用。 首先,让我们...

    在Eclipse Java EE IDE for Web Developers下装Jad插件

    在Eclipse Java EE IDE for Web Developers中安装Jad插件是一项重要的开发任务,因为Jad是Java反汇编器(Java decompiler)的缩写,它允许开发者查看和理解已编译的Java类文件的原始源代码。这对于调试、逆向工程...

    Java EE企业级应用开发教程(SSM)源码.zip

    1. **项目结构**:源码会展示一个标准的Java EE项目结构,包括src/main目录下的java、resources、webapp等子目录,以及相关的pom.xml(Maven)或build.gradle(Gradle)配置文件。 2. **Spring配置**:在src/main/...

    电影影院管理系统电影购票系统java项目jsp web项目

    在这个系统中,Java作为后台开发语言,JSP(JavaServer Pages)用于构建动态网页,Web技术则构成了整个系统的网络基础。下面将详细介绍这个系统的关键技术和知识点。 1. **Java**: Java是一种广泛应用于服务器端...

    java web 开发 api大全 chm文档

    【Java Web开发API大全CHM文档】集合了多个与Java EE相关的API和技术,包括Java EE 5和6的英文规范,Tomcat 6.0的中文文档,以及JSP和Servlet的英文及中文版本API。这些资源对于深入理解和开发基于Java的Web应用程序...

    Java Web开发项目 附源代码

    在MyEclipse中,你可以方便地创建、运行和调试Java Web项目,包括编写源代码、管理数据库连接以及部署到Tomcat服务器。 5. **路径配置**:项目可能涉及到配置文件,如`web.xml`(Web应用的部署描述符)或应用的配置...

    java web 项目 自动部署

    Java Web项目的自动部署是开发流程中的重要一环,它能够极大地提高开发效率,减少手动部署的时间和出错可能性。在本项目中,我们利用Apache Tomcat服务器进行自动化部署,具体的步骤和关键知识点如下: 首先,我们...

    Java EE编程 源代码

    Java EE(Java Platform, Enterprise Edition)是Oracle公司提供的一个用于...在分析和学习这些代码时,要注意代码的结构、设计模式、异常处理、性能优化等方面,同时结合相关文档和教程,以便全面掌握Java EE的精髓。

    126个 JAVA EE 项目源码下载.part13

    此外,源码中可能还包括了测试代码、Maven或Gradle构建文件、日志配置、国际化资源文件等,这些都是一个完整Java EE项目不可或缺的部分。 学习这些项目源码,开发者不仅可以提升Java EE技术栈的技能,还能了解最佳...

    Java EE Schema Resources

    在Java EE开发中,模式资源通常包括XML架构(Schema),它们定义了各种配置文件的结构和约束,比如web.xml(Web应用部署描述符)、ejb-jar.xml(Enterprise JavaBeans配置)、persistence.xml(持久化配置)等。...

    Myeclipse整合flex4搭建java Web项目

    4. **Java Web项目**:在Myeclipse中,创建一个Java Web项目通常包括定义Web应用的目录结构,如WEB-INF目录下的web.xml配置文件,以及Java类、Servlet、JSP等资源。 5. **web.xml**:这是Java Web应用的部署描述符...

    在Eclipse环境下开发Java-Web项目.pdf

    创建项目之后,可以在Package Explorer中看到项目的结构,其中包括src目录存放Java类,WebContent目录存放页面文件等。 开发Java-Web项目时,编写Servlet是常见任务。在Eclipse中可以通过new &gt; Servlet快捷方式创建...

Global site tag (gtag.js) - Google Analytics