JAVA WEB專案目錄結構以及web應用部署的根目錄,編譯路徑和專案根目錄的區別
阿新 • • 發佈:2019-01-07
web應用部署的根目錄,編譯路徑和專案的根目錄有什麼區別?
直接上例子:
你有一個專案,名字叫做testPro
專案放到了你的D盤,目錄結構是這樣的:
D:/testPro
--src
--main
--webapp
--WEB-INF
--target
--classes
這裡,專案的根目錄就是D:/testPro
web應用部署的根目錄就是webapp目錄(當然你的目錄可能叫web或者webroot或者別的什麼)
編譯路徑預設的就是target/classes
附一個javaweb專案的目錄結構
├──
pom.xml //maven的配置檔案
└──
src
├──
main
│
├── java //java程式碼的目錄
│
│ └── mygroup
│
│ ├── controller
│
│ │ ├── HomeController.java
│
│ │ └── PersonController.java
│
│ ├── dao
│
│ │ └── PersonDao.java
│
│ └── model
│
│ └── Person.java
│
├── resources //靜態資源目錄
│
│ ├── db.properties
│
│ ├── log4j.xml
│
│ └── META-INF
│
│ └── persistence.xml
│
└── webapp //web應用部署根目錄
│
├── index.html //因為是靜態html檔案,不用放到WEB-INF目錄下
│
├── META-INF
│
│ ├── context.xml
│
│ └── MANIFEST.MF
│
├── resources //css,js等靜態資源是不能放到WEB-INF目錄下的,因為WEB-INF下的資源,客戶端無法直接訪問
│
│ └── css
│
│ └── screen.css
│
└── WEB-INF //jsp都會放到這裡,以保證使用者無法直接訪問jsp,而是通過controller這個目錄下的所有內容客戶端都無法直接訪問,所以不要放靜態檔案
│
├── 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