JavaWeb工程 目录结构***
以下是mavaen推荐的项目目录.
├── pom.xml└── src ├── main │ ├── java │ │ └── group │ │ ├── controller │ │ │ ├── HomeController.java │ │ │ └── PersonController.java │ │ ├── dao │ │ │ └── PersonDao.java │ │ └── model │ │ └── Person.java │ ├── resources │ │ ├── db.properties │ │ ├── log4j.xml │ │ └── META-INF │ │ └── persistence.xml │ └── webapp │ ├── index.html │ ├── META-INF │ │ ├── context.xml │ │ └── MANIFEST.MF │ ├── resources │ │ └── css │ │ └── screen.css │ └── WEB-INF │ ├── spring │ │ ├── app │ │ │ ├── controllers.xml │ │ │ └── servlet-context.xml │ │ ├── db.xml │ │ └── root-context.xml │ ├── views │ │ ├── edit.jsp │ │ ├── home.jsp │ │ └── list.jsp │ └── web.xml └── test ├── java │ └── group │ ├── controller │ │ ├── DataInitializer.java │ │ ├── HomeControllerTest.java │ │ └── PersonControllerTest.java │ └── dao │ └── PersonDaoTest.java └── resources ├── db.properties ├── log4j.xml ├── test-context.xml └── test-db.xml
Java web工程下的webapp或WebContent就是工程的发布文件夹,发布时会把该文件夹发布到tomcat的webapps里。
开发时classes文件存放路径:
buildpath:在eclipse中项目的右键Java/build path-source中指定工程中class文件的编译路径,一般为:test/build/classes。(test是工程名)
发布时classes文件存放路径:
发布到tomcat时(在eclipse里启动tomcat),src文件夹里的java文件经过编译后,会把.class文件放在WEB-INF文件夹里的classes文件夹中。
有一些配置文件需要放到WEB-INF的classes文件夹下,所以,通常的做法是手动在工程的WEB-INF文件夹下建立classes文件夹。如果不在工程的WEB-INF下手动建立classes,发布到tomcat时tomcat里的WEB-INF中也会有classes文件夹。
关于jar
【Web App Libraries】 一般是指向web工程的 WEB-INF/lib下的包(可以将包copy到此目录下 然后刷新工程 加入的包一般可以自动找到 如果找不到 右键|Properties |Java Build Path|Libraries |Add JARs 可以加入)
build path中add jar可以引用工程文件夹以外的jar,如果引用了工程以外的jar,在.classpath文件中会添加(如java的jar包jre和tomcat的jar包):
<classpathentry kind="lib" path="D:/workspace/ojdbc14.jar"/>
web-info/lib中的jar不会往.classpath文件中会添加, 其余两者没有区别,编译的时候先找classpath中的jar如果没有则找web-info/lib中的jar。
web工程参照了很多文件,因此发布的时候要打成war包,使其变成单独的个体,放到web容器里。
开发环境中eclise会将工程打包放到tomcat下,进行关联。
1.工程目录:
2.发布后的tomcat目录:
基于Java开发平台开发业务系统,建议使用maven作为构建工具,以方便不同组件和依赖包的管理。客户现场开发的情况,访问Maven仓库确实困难的,可事先将依赖关系以Release的方式下载到一个集中的目录,然后使用Ant对工程进行构建。
程序目录结构应遵从maven默认约定(即使采用ANT构建),以统一规范,简化构建配置。一个典型的JavaEE应用(对应公司某产品、或某个项目的程序),目录结构如下:
大型项目应划分多个工程(project,模块),每个工程的目录结构也同样遵从相同约定。
各目录的内容/用途如下:
|
目录 |
用途 |
|
src/main/java |
Application /Library 的java源代码(再分package) |
|
src/main/flex |
增加:flex源码,包含mxml定义、assets和as脚本 |
|
src/main/resources |
Application/Library 的资源文件,如多字符集boundle,位图,配置文件等(单独建立conf等子目录) |
|
src/main/resources/conf |
增加:准备封到JAR包中的配置文件(默认包下conf/目录) |
|
src/main/filters |
【暂不用】Resource filter files |
|
src/main/assembly |
【暂不用】Assembly descriptors |
|
src/main/config |
【暂不用】maven配置文件 |
|
src/main/webapps |
Web 应用的网页,WEB-INF目录等所在,详见本表下方说明 |
|
src/test/java |
单元测试的源代码 |
|
src/test/resources |
测试使用的资源文件,如集成测试脚本等 |
|
src/test/resources/conf |
增加:测试用例需要的配置文件 |
|
src/test/filters |
【暂不用】Test resource filter files |
|
src/site |
【暂不用】Site |
|
target |
maven编译目录,包含中间过程文件和最终的工件(如jar) |
|
pom.xml |
Maven工程的配置文件,以此控制maven构建行为 |
|
LICENSE.txt |
产品/本工程的版权信息文件 |
|
README.txt |
产品/本工程的说明文件 |
为规范war包结构,对src\main\webapp目录做如下约定:
|
目录 |
存放内容 |
|
css |
存放.css格式文件(可再分目录) |
|
skins |
存放皮肤文件(按主题划分的framework的位图) |
|
images |
存放图片,按产品、功能模块划分子目录 |
|
js |
JavaScript文件(对象、函数库) |
|
include |
存放被包含的JS文件片段【注:JSP文件互相不要包含,通过模板/组件/标签库/BEAN实现重用】 |
|
resources |
存放JSF组件、相关资源等 |
|
templates |
模板文件存放地,按类别划分子目录 |
|
pages |
网页目录(静态和动态网页,除index.jsp),按产品、功能模块划分子目录 |
|
webapp下其他目录 |
解释为模块名,认为其中全部为网页,可再分子目录 |
|
META-INF |
存放清单文件、services等配置信息 |
|
WEB-INF |
网站配置文件目录,存放WEB.XML等配置信息 |
|
WEB-INF/classes |
未打包的项目编译代码,禁止手工修改。 |
|
WEB-INF/conf |
存放struts,spring,hibernate,JSF等的配置文件 |
|
WEB-INF/lib |
存放第三方JAR包,使用MAVEN构建时此目录禁止手动放入文件! |
|
WEB-INF/pages |
高安全性的网页目录,如登录信息维护等 |
|
WEB-INF/tld |
JSP标签库定义文件存放目录 |

二、Spring MVC+MyBatis项目的文档结构
三、Tomcat文档目录结构
JavaWeb工程 目录结构***的更多相关文章
- [转]JavaWeb工程 目录结构
今天为此事纠结了一段时间. 以下是mavaen推荐的项目目录. ├── pom.xml └── src ├── main │ ├── java │ │ └── my ...
- 基础知识(javaWeb工程目录结构)及各文件夹的作用
在Eclipse中只要创建一个Dynamic Web Project,就可以根据创建向导创建出一个典型Java Web站点的目录结构.除非有特殊需要,在大多数情况下都没有必要修改这个目录结构,这也是W ...
- JavaWeb项目目录结构
今天本来是准备学习spring mvc + mybatis,结果被idea的配置环境卡主了,自己刚刚接触JavaWeb不久,所以浪费了很多时间.最终我回归最简单的servlet & jsp,并 ...
- IOS的工程目录结构和生命周期
IOS的工程目录结构和生命周期 ·simple table文件夹:工程相关源代码和配置文件 BIDAppDelegate : 委托的声明和实现 BIDViewController: 视图控 ...
- Android工程目录结构
----------siwuxie095 首先创建一个简单的项目:MainActivity 工程目录结构一览: 工程目录结构介绍: 1.manifests目录 里面有一个AndroidManifest ...
- Ionic 3 项目的工程目录结构(转载)
工程目录结构说明如下图
- Django工程目录结构优化
1.我看到这篇文章,写的不错,在此复制了一份,防止以后找不到! 感谢作者的翻译--->原文的链接:http://www.loonapp.com/blog/11/ 如果原文存在,请打开原文件阅读 ...
- Java Web工程目录结构
说明 介绍java web 工程的基本结构目录.记录java web 工程结构的学习. Java web 结构 java web严格来说分为两类工程结构:一个是工程编译目录结构,一个是工程发布目录结构 ...
- 转:基于Maven管理的JavaWeb项目目录结构参考
通常在创建JavaWeb项目时多多少少都会遵循一些既定的比较通用的目录结构,下面分享一张基于Maven管理的JavaWeb项目目录结构参考图: 上图仅是参考,不同项目不同团队都有自己的约定和规范. 个 ...
随机推荐
- Spring Boot 揭秘与实战(五) 服务器篇 - Tomcat 代码配置
Spring Boot 内嵌的 Tomcat 服务器默认运行在 8080 端口.如果,我们需要修改Tomcat的端口,我们可以在 src/main/resources/application.prop ...
- hadoop day 2
1.hdfs shell相关命令 #hadoop fs -ls / 查看HDFS根目录 #hadoop fs -mkdir /test 在根目录创建一个目录test #hadoop fs -mkdir ...
- Linux 下 SVN服务器搭建
使用Linux(CentOS)搭建SVN服务器全攻略 虽然在windows上搭建SVN很简单,但是效能却不高,这当然是和linux相比了.然而在linux上搭建SVN却非常繁琐,所以今天这篇文章就来一 ...
- Templates中的标签if
1.什么是标签 每个标签标示的是不同的服务器端的功能 2.常用标签 1. if 标签 1.基本if结构 {% if 条件 %} % endif %} 2.if ... else ... 结构 {% i ...
- arcgis server备份还原过程
一.备份过程 1.找到已经安装的arcgis server安装目录,并找到备份工具: 2.快捷键win + R启动cmd,将备份工具文件拖入cmd窗口,enter 3. 通过backup.py脚本进行 ...
- 【SpringBoot】SpringBoot热部署和配置文件自动注入实战
========================3.SpringBoot热部署devtool和配置文件自动注入实战 ============================ 1.SpringBoot2 ...
- curl提示不支持https协议解决方法
根据网上的资料,这个问题的原因是因为在安装curl时使用默认安装,但是默认安装并不支持https协议 简单粗暴的办法就是,卸载重新安装curl(有一种方法是重新编译就可以了,然后使用编译后的可执行文件 ...
- 异构环境oracle数据库迁移dmp文件之exp和imp以及expdp和impdp
exp/imp可在以下情况下使用 两个数据库之间传送数据 1.同一个oracle数据库的版本之间 2.不同oracle数据库的版本之间 3.相同或不相同的操作系统之间的oracle数据库 用于数据库的 ...
- xencenter如何安装Centos7虚拟机系统
xencenter的ip地址192.168.245.134(win10系统) 首先我们在win10系统安装好xencenter(这个软件可以直接在xenserver启动后,通过访问xenserver的 ...
- Why service collaboration needs choreography AND orchestration
转自:https://blog.bernd-ruecker.com/why-service-collaboration-needs-choreography-and-orchestration-239 ...