java web目录结构
Javaweb项目的源文件与字节码文件的目录结构
1、新建项目的源文件目录结构:
|----myProject
|----.settings(文件夹)
|----.classpath
|----.project
|----.mymetadata
|----src
|----WebRoot
|----其他静态文件:HTML、CSS、JavaScript、图片、jsp页面等
|----index.jsp:页面可以直接放在根目录下
|----META-INF
|----WEB-INF
|---- classes根目录:存放字节码文件
|----lib目录:存放第三方类库文件
|-- --web.xml:Web应用部署描述文件,必须目录
|----TLD文件:标签库描述文件
相应的解释:
1、1、.settings文件夹:里面存放各种插件的配置文件。
1、2、.classpath:定义了项目在编译时所使用的$CLASSPATH,就是配置整个工程运行环境
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="lib" path="lib/dom4j-1.6.1.jar">
<classpathentry kind="con" path="com.genuitec.eclipse.j2eedt.core.J2EE14_CONTAINER"/>
<classpathentry kind="output" path="WebRoot/WEB-INF/classes"/>
</classpath>
从数据上我们容易看出,上面描述了工程的依赖文件:
1. 源文件的具体位置(kind="src")
2. 运行的系统环境,JDK运行时容器(kind="con")
3. 工程的library的具体位置信息(kind="lib")
4. 在每个lib的xml子节点中,有关于它的其它配置信息(例如我配置的那个"javadoc_location")
5. 项目字节码文件的输出目录(kind="output")
1、3、.mymetadata:描述项目在myeclipse的配置信息
<?xml version="1.0" encoding="UTF-8"?>
<project-module
type="WEB" 工程类型
name="myProject" 工程名称
id="myeclipse.1343985658390" 工程在工作空间内的唯一标识
context-root="/myProject" 请求的根路径
j2ee-spec="1.4" J2EE标准
archive="myProject.war"> 打包后war文件
<attributes>
<attribute name="webrootdir" value="WebRoot" /> Web根目录名称
</attributes>
</project-module>
1、4、.project:描述工程信息
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<!-- 工程名称 <name>-->
<name>myProject</name>
<!--工程注释描述-->
<comment></comment>
<projects>
</projects>
<!-- 编译器指定 <buildSpec>:具体加载方式信息-->
<buildSpec>
<buildCommand>
<name>com.genuitec.eclipse.j2eedt.core.WebClasspathBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>com.genuitec.eclipse.j2eedt.core.J2EEProjectValidator</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>com.genuitec.eclipse.j2eedt.core.DeploymentDescriptorValidator</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.wst.validation.validationbuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<!-- 核心特性 <natures> :运行时需要的额外Eclipse插件-->
<natures>
<nature>com.genuitec.eclipse.j2eedt.core.webnature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
2、项目的字节码文件目录结构:
|----myProject
|----其他静态文件:HTML、CSS、JavaScript、图片、jsp页面等
|----index.jsp:页面可以直接放在根目录下
|----META-INF
|----WEB-INF
|---- classes根目录:存放字节码文件
|----lib目录:存放第三方类库文件
|-- --web.xml:Web应用部署描述文件,必须目录
|----TLD文件:标签库描述文件
3、总结:
通过上面两个目录结构的解释,当项目被编译之后,已经没有了src和WebRoot文件路径,所以当在配置文件中加载某个文件时:
<param-value>/WEB-INF/struts-config.xml</param-value>
<param-value>resource/struts/struts-config.xml</param-value>(resource在源文件src下面)
java web目录结构的更多相关文章
- Java Web项目结构
Java Web项目结构(一般) 1.Java src 2.JRE System Library 3.Java EE 6 Libraries 4.Web App Libraries 5.WebRoot ...
- Servlet第一篇【介绍Servlet、HTTP协议、WEB目录结构、编写入门Servlet程序、Servlet生命周期】
什么是Serlvet? Servlet其实就是一个遵循Servlet开发的java类.Serlvet是由服务器调用的,运行在服务器端. 为什么要用到Serlvet? 我们编写java程序想要在网上实现 ...
- Java Web目录
1. Spring持久化 2. Spring核心之IoC——依赖注入 3. Hibernate查询语言 4. Hibernate 实体关联关系映射(转载) 5. 用MyEclipse自动生成hiber ...
- Web目录结构
/: Web应用的跟目录,该目录下所有文件在客户端都可以访问(JSP,HTML) /WEB-INF: 存放应用使用的各种资源.该目录及其子目录对客户端都是不可以访问的, 其中包括web.xml(部署表 ...
- Java递归目录结构
import java.io.File; public class FileTree { public static void main(String[] args) { printFileTree( ...
- IntelliJ IDEA 中的Java程序目录结构
--src 应用程序源代码与测试代码的根目录 --main 应用程序代码的源目录 --java 源代码 --resources 项目用到的资源文件 --test 测试程序代码的源目录 --java 测 ...
- IDEA中Java目录结构
IDEA中Java的目录结构 1.首先新建Project,选择Empty,新建空的项目 2.选择Module时候,需要选择JDK,JDK只需要选择到Java Home目录就可以了 3.创建好Modul ...
- 使用 IntelliJ IDEA 2016和Maven创建Java Web项目的详细步骤及相关问题解决办法
Maven简介 相对于传统的项目,Maven 下管理和构建的项目真的非常好用和简单,所以这里也强调下,尽量使用此类工具进行项目构建, 它可以管理项目的整个生命周期. 可以通过其命令做所有相关的工作,其 ...
- 【转】IntelliJ IDEA2016.1 + maven 创建java web 项目
最近开始使用idea 来写java项目了,这个很流行,相比Eclipse方便了很多.功能多了,相对应的使用的复杂度也较高了,因为网上很多的使用和创建项目的简单教程,都是基于老版本的,每个新版本都有不一 ...
随机推荐
- 转载:完全卸载oracle11g步骤
完全卸载oracle11g步骤: 1. 开始->设置->控制面板->管理工具->服务 停止所有Oracle服务. 2. 开始->程序->Oracle - OraHo ...
- php中日期的加减法运算
需求:通过对某个日期增加或减去几天,得到另外一个日期1.首先通过strtotime()获得日期的时间戳2.获得N天前得时间戳,通过”当前时间戳 - N天的秒数 = N天前得时间戳“3.对N天前得时间戳 ...
- WP8.1 Study5:Data binding数据绑定
一.数据绑定 最简单的编程UI控件的方法是写自己的数据来获取和设置控件的属性,e.g. , textBox1.Text = "Hello, world"; 但在复杂的应用程序,这样 ...
- “更高效率:标准化+简约风+移动化”--K2 BPM老客户交流会
主题:工作流主数据标准化和移动工作流带来的企业沟通建设机会 嘉宾:李瑞延(盛大网络IT总监) 公司管理需要更好的工作流 -为决策提供依据 通过对各级业务公司各类流程数据的获取与分析,为管理决策提供必要 ...
- The Coco-Cola Store C(Contest #3 )
Once upon a time, there is a special coco-cola store. If you return three empty bottles to the shop, ...
- English test for certificate
<英语口译全真试题精解> GPA 3.5 (MTI) (CPA) ( GRE ) 1350分+3.5以上 SAT ( TOEFL ) 100分以上 TOEIC BEC (剑桥商务英语 ...
- MSP430x1_4_6x之问题总结
01:MSP430端口上电复位的初始值是不确定的:所以使用是都要初始化:比如加下面的语句或者加你使用的端口就行了: /*下面六行程序关闭所有的IO口*/ P1DIR = 0XFF;P1OUT ...
- <转>thinkphp的各种内部函数 D()、F()、S()、C()、L()、A()、I()详解
D.F.S.C.L.A.I 他们都在functions.php这个文件家下面我分别说明一下他们的功能 D() 加载Model类M() 加载Model类 A() 加载Action类L() 获取语言定义C ...
- C#获取项目程序及运行路径的方法
1.asp.net webform用“Request.PhysicalApplicationPath获取站点所在虚拟目录的物理路径,最后包含“\”: 2.c# winform用 A:“Applicat ...
- SQL优化-索引
(一)深入浅出理解索引结构 实际上,您可以把索引理解为一种特殊的目录.微软的SQL SERVER提供了两种索引:聚集索引(clustered index,也称聚类索引.簇集索引)和非聚集索引(nonc ...