JavaWeb⼯程⽬录结构
今天为此事纠结了⼀段时间。
以下是mavaen推荐的项⽬⽬录.
├── l
└── src
├── main
│├── java
││└── mygroup
││├── controller
│││├── HomeController.java
│││└── PersonController.java
││├── dao
│││└── PersonDao.java
││└── model
││└── Person.java
│├── resources
││├── db.properties
││├── l
││└── META-INF
││└── l
│└── webapp
│├── index.html
│├── META-INF
││├── l
││└── MANIFEST.MF
│├── resources
││└── css
││└── screen.css
│└── WEB-INF
│├── spring
││├── app
│││├── l
│││└── l
││├── db.xml
││└── l
│├── views
││├── edit.jsp
││├── home.jsp
││└── list.jsp
│└── l
└── test
├── java
│└── mygroup
│├── controller
││├── DataInitializer.java
││├── HomeControllerTest.java
││└── PersonControllerTest.java
│└── dao
│└── PersonDaoTest.java
└── resources
├── db.properties
├── l
├── l
└── l
==========================================================================================================
tomcat 推荐的⽬录结构 /tomcat-5.5-doc/appdev/source.html
===========================================================================================================
webapp是什么架构Java web⼯程下的webapp或WebContent就是⼯程的发布⽂件夹,发布时会把该⽂件夹发布到tomcat的webapps⾥。
开发时classes⽂件存放路径:
buildpath:在eclipse中项⽬的右键 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⽬录: