sp0*_*00m 15 java spring file-organization web-applications java-ee
对于我正在开发的webapps,我通常使用以下文件组织,因为我认为它尊重约定:
src
|-- main
|-- resources
| |-- *.properties
| |-- *.xml
| |-- spring
| |-- applicationContext.xml (main application context config file)
|-- webapp
|-- WEB-INF
|-- spring
| |-- spring-mvc.xml (web application context config file, delegated to manage only the web part)
| |-- spring-security-http.xml (web security config)
|-- static
| |-- *.css
| |-- *.js
|-- views
| |-- *.jsp
|-- web.xml (deployment configuration)
Run Code Online (Sandbox Code Playgroud)
我想尝试的是根据以下结构组织我的文件:
src
|-- main
|-- resources
| |-- *.properties
| |-- *.xml
| |-- web.xml
| |-- spring
| |-- applicationContext.xml
| |-- spring-mvc.xml
| |-- spring-security-http.xml
|-- webapp
|-- WEB-INF
|-- static
| |-- *.css
| |-- *.js
|-- views
|-- *.jsp
Run Code Online (Sandbox Code Playgroud)
当然,在打包webapp时,文件将被重新定位到必要的位置(例如WEB-INF文件夹中的web.xml文件).我想重新组织我的webapps的原因是,我发现将所有*.xml配置文件放在同一个位置更方便,而不是在这里有一些,有些在那里.打破我的初始结构,你认为这是一个坏主意吗?如果是,为什么?为什么在WEB-INF文件夹中包含所有Web配置文件如此重要?
PS:从技术上讲,我知道如何很好地链接webapp的类路径中的所有文件.问题更多的是关于会议和个人/专业经验的反馈.
inf*_*k01 14
您可以创建Java Web项目是一些流行的IDE,如Eclipse,NetBeans,IntelliJ IDEA,以查看典型的Java Web应用程序结构.
开发结构和包装结构之间存在差异.
在开发应用程序时,您几乎可以使用您喜欢的任何结构.但您必须根据特定规则打包 Java EE Web应用程序.
有关详细信息,请参阅官方Java EE教程:
此外,还提供了使用Java 2 Platform,Enterprise Edition开发的结构化应用程序的推荐约定(尽管已过时但可能有用):
Java蓝图指南.企业应用项目约定
这里是上面的Java BluePrints的一个例子:
UPDATE
以下是我的一个带有Spring的Java Web应用程序项目的示例.例如,我将所有与Spring相关的配置文件存储在WEB-INF中专门创建的spring文件夹中.在spring文件夹中,我创建了更多文件夹以更好地组织我的应用程序.同样,它只是可能的变体之一,即个人偏好的问题.