Java Web 项目目录规范
一、项目结构
这里和其他项目区别不大,我将模板抽离出来,更容易分析和理解:

解释一下:js主要包括extends(引入第三方的js)、module(项目模块自己的js)、lib(引用包,这里也可以继续拆分),module中包含具体的模块中的js。common.js是核心命名空间的js.
二、common.js

解释一下,Globals作为全局命名空间,各个模块均可以在此命名空间里定义域(如果有不明白的可以自学下命名空间,这个文件写死就行,也不用具体理解)。
华东web项目工程规范
基于Java开发平台开发业务系统,建议使用maven作为构建工具,以方便不同组件和依赖包的管理。客户现场开发的情况,访问Maven仓库确实困难的,可事先将依赖关系以Release的方式下载到一个集中的目录,然后使用Ant对工程进行构建。
程序目录结构应遵从maven默认约定(即使采用ANT构建),以统一规范,简化构建配置。一个典型的JavaEE应用(对应公司某产品、或某个项目的程序),目录结构如下:

大型项目应划分多个工程(project,模块),每个工程的目录结构也同样遵从相同约定。
各目录的内容/用途如下:
|
目录 |
用途 |
|
src/main/java |
Application |
|
src/main/flex |
增加:flex源码,包含mxml定义、assets和as脚本 |
|
src/main/resources |
Application/Library |
|
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 |
|
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标签库定义文件存放目录 |
Java Web 项目目录规范的更多相关文章
- JAVA WEB项目目录结构以及web应用部署的根目录,编译路径和项目根目录的区别
本文链接:https://blog.csdn.net/l00149133/article/details/78984083 web应用部署的根目录,编译路径和项目的根目录有什么区别? 直接上例子: 你 ...
- Java Web 项目目录结构
为了使 Web 容器顺利地执行 Web 应用,开发者需要以一种标准的方式将 Web 项目中的资源(Servlets.JSP 等)打包.一个 Web 项目的目录结构可分为两种: 发布目录结构 Web 容 ...
- idea中的java web项目(添加jar包介绍)和java maven web项目目录结构
java web项目 web项目下web根目录名称是可以更改的 idea中新建java web项目,默认src为Sources Root,当然也可以手动改,在Sources Root下右键只能新建Pa ...
- 全网最详细的Eclipse里如何正确新建普通的Java web项目并发布到Tomcat上运行成功【博主强烈推荐】(图文详解)
不多说,直接上干货! 首先,大家要明确,IDEA.Eclipse和MyEclipse等编辑器之间的新建和运行手法是不一样的. 如果是在Myeclipse里,则是File -> new -> ...
- web项目目录结构
eclipse web项目目录结构 按照 Java EE 规范的规定,一个典型的 Web 应用程序有四个部分: 1. 公开目录 ; 2. WEB-INF/web.xml 文件,发布描述符(必选) ; ...
- java web项目答辩答辩题总结(书本网上语言答辩+自己的语言答辩)
答辩每个人的总分为1.5分.每个人主要问3个问题. 开发流程===>系统架构====>项目模块+功能===>项目得失重定向与转发:?九个隐式对象?get与post的区辨:?jsp有静 ...
- Java Web系列:Java Web 项目基础
1.Java Web 模块结构 JSP文件和AXPX文件类似,路径和URL一一对应,都会被动态编译为单独class.Java Web和ASP.NET的核心是分别是Servlet和IHttpHandle ...
- SpringMVC内容略多 有用 熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。
熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器.过滤器等Web组件以及MVC架构 ...
- Eclipse 的 Java Web 项目环境搭建
从svn上拉取下来Eclipse的项目 IntelliJ IDEA自动识别到可编译的 src 类目录 Java Web 项目 html(一般命名为:WebRoot) 是整个项目输出的根目录. WEB- ...
随机推荐
- Tomcat 知识点
Tomcat(重点) Tomcat是一个符合于Java EE Web标准的最小web容器,所有的jsp程序一定需要有WEB容器的的支持才可以运行,而且在给定的WEB容器里面会支持事务处理操作. Tom ...
- Uva 11732 strcmp() Anyone?
strcmp() Anyone? Time Limit: 2000MS Memory Limit: Unknown 64bit IO Format: %lld & %llu [Subm ...
- mysql 优化
1.存储过程造数据 CREATE DEFINER=`root`@`localhost` PROCEDURE `generate_test_data`(`n` int) begin declare i ...
- 3d转换-正方体-Html5Css3-遁地龙卷风
(-1) 写在前面 我用的是chrome49,这个案例是从网上看到的,向这位同行致敬,建议大家在记录自己学习感悟时,向我一样加上笔名,被转载的时候还能留下点东西. 在研究slice-box.js的时候 ...
- OSI7层模型详解
首先我们借用百度百科上的图片来基本了解一下OSI7层模型的名称以及结构.下面我将从最底层一层一层往上介绍. 物理层:基于Bit传输,是属于物理信道,最基本的机械.电子.定时接口通信信道. 数据链路层: ...
- 页面解耦—— 统跳协议和Rewrite引擎
原文: http://pingguohe.net/2015/11/24/Navigator-and-Rewrite.html 解耦神器 —— 统跳协议和Rewrite引擎 Nov 24, 2015 • ...
- window.top.location.href 和 window.location.href 的区别
"window.location.href"."location.href"是本页面跳转. "parent.location.href" 是 ...
- Qt拖拽界面 (*.ui) 缩放问题及解决办法
问题 使用Qt Designer 设计的界面,在缩放的时候不能随着主窗口一起缩放. 解决办法 之前遇到这个问题的时候,都是直接重写resizeEvent接口来实现的,在自动生成的Ui_Widget或U ...
- Sublime3和Chrome配置自动刷新网页【实测可用】
SublimeText2下的LiveReload在SublimeText3下无法正常使用,本文整理SublimeText3安装LiveReload的方法.win7下实测可用! 安装成功后,就不需要再手 ...
- selenium webdriver 建行软键盘输入密码
driver.get("https://ibsbjstar.ccb.com.cn/app/V5/CN/STY1/login.jsp"); driver.manage().timeo ...