[SPRING] J2EE 웹 애플리케이션의 표준 프로젝트 / 패키지 구조
SPRINGJ2EE 웹 애플리케이션의 표준 프로젝트 / 패키지 구조
Spring, Spring MVC 및 Hibernate를 사용하여 새로운 Java EE 웹 애플리케이션을 시작합니다. 우리는 아마도 maven을 사용하고있을 것입니다.
시작하기 전에 웹 애플리케이션의 프로젝트 / 패키지 구조를 찾아야합니다.
Java EE 웹 응용 프로그램의 표준 프로젝트 / 패키지 구조 란 무엇입니까?
또한 프로젝트 구조 또는 모든 구성 파일을 변경하지 않고 모든 응용 프로그램 서버에서 실행해야합니다.
Spring 소스 IDE 버전 2.6.0 (최신 버전)을 사용하게 될 것입니다.
어떤 아이디어?
해결법
-
==============================
1.만약 당신이 maven을 사용한다면, 표준 maven 프로젝트 레이아웃을 따르는 것이 가장 좋습니다. 당신은 maven에게 당신을 위해이 구조체를 생성하도록 할 수 있습니다.
만약 당신이 maven을 사용한다면, 표준 maven 프로젝트 레이아웃을 따르는 것이 가장 좋습니다. 당신은 maven에게 당신을 위해이 구조체를 생성하도록 할 수 있습니다.
mvn archetype:generate
선택 목록에서 spring-mvc-jpa-archetype을 선택하십시오.
이렇게하면 다음과 같은 패키지 구조가 제공됩니다.
├── pom.xml └── src ├── main │ ├── java │ │ └── mygroup │ │ ├── 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 │ └── mygroup │ ├── controller │ │ ├── DataInitializer.java │ │ ├── HomeControllerTest.java │ │ └── PersonControllerTest.java │ └── dao │ └── PersonDaoTest.java └── resources ├── db.properties ├── log4j.xml ├── test-context.xml └── test-db.xml
-
==============================
2.MVCSR (Model, View, Controller, Service, Repository) 웹 애플리케이션을위한보다 일반적인 Java 패키지 구조는 다음과 같습니다.
MVCSR (Model, View, Controller, Service, Repository) 웹 애플리케이션을위한보다 일반적인 Java 패키지 구조는 다음과 같습니다.
java └── com └── youdomain | ├── base // broadly used app-wide base and abstract classes) | ├── core // broadly, scattered use helpers, utilities, app health/stats | // tracking, logging, etc | ├── controller // Fields Http/CGI requests and drives/initiates request | // comprehension, validation, security checks, requesting | // operations by the Service module and invoking the View to | // generate a response. | ├── data // This is the lower level data infrastructure, with several | //packages under it for mappers, schema tables/enums, helpers, | // record location, id management, etc | ├── domain // app-wide exposed classes, managers, and interfaces to | // each persisted (usually DB) domain 'object'. Each | // object often correlates to one table row in you DB. | // Domain objects are mostly considered data, but have some fundamental | // record construction, validation, elaboration, and ancillary information | // functionality which is opaque to the rest of the application. | // For example: Customer, Account, Purchase, Inventory, | // Product, Sale, Return, SpecialOffer, FeedbackComment... | ├── repository // more complicated persisted objects, often structured | // to address certain efficiency or traversal needs, often each | // repository is underpinned by several records, tables, | // and even cross-DB structures. Example: | // -- OrderHistory, | // -- ProductsGlobalSearchIndex, | // -- CustomerSpecificProductMarketingSuggestionCorrelates | ├── service // The smarts of the whole application, performs macro, holoistic | // operations involving multiple DB tables and operations. Such as: | // -- account.UserAccountLifecycle, | // -- order.CustomerOrder, | // -- order.CustomerOrderShipment | └── view // Intefaces with your jsp, freemarker, tapestry etc.
from https://stackoverflow.com/questions/5878774/standard-project-package-structure-of-a-j2ee-web-application by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] Spring Util : 빈에 대한 주석을 통한 속성 주입 (0) | 2019.03.03 |
---|---|
[SPRING] 봄 3.0.5 라이브러리 항아리 (0) | 2019.03.03 |
[SPRING] 바람둥이 클러스터에있는 Spring Websocket (0) | 2019.03.03 |
[SPRING] 스프링 MVC 세션 속성 액세스 (0) | 2019.03.03 |
[SPRING] 스프링 부트에서 RequestContextListener 구성하기 (0) | 2019.03.03 |