使用Maven管理项目-----创建Struts2,Spring,Hibernate项目

Maven应该都听说过吧!一个构建工具!与Ant相比,它更粗粒化!不需要编写build.xml文件,来操作项目的编译,运行,打包!只要你创建了一个Maven项目,编译,只需要mvn compile!Maven会自动的帮你完成编译!
关于Maven2的知识请看这里!
http://books.sonatype.com/maven-book/reference_zh/introduction.html
这是翻译,还没翻译完,到16章,不过应该够用了目前!
这里使用eclipse来开发Maven项目!eclipse需要一个插件,m2eclipse,目前应该是最强的Maven插件,非常的方便!待会就能体会到!
m2eclipse的安装,看这里!
http://books.sonatype.com/maven-book/reference_zh/eclipse.html

还有关于Maven建立本地jar仓库的内容,翻译里面都有!

安装完插件,就可以创建Maven项目了!Maven项目是基于原型的!创建完了,就是一个架子!
下面就可以创建Struts2+Spring+Hibernate项目了。非常非常的简单,比Myeclipse的创建过程可能都简单!(有段时间没用Myeclipse了。。)
1.new ->project->other...

2.第二步直接next即可
3.
这里是选择Maven项目的原型!搜索一下,struts,就能找到了!点中需要的原型,next.
4
这里是Maven项目的相关内容。可以参考上面的翻译。
Group Id ,Artifact Id,Version唯一的确定了你的项目!
这里,Group Id可以随便你写,Artifact Id为项目的名称,Version嘛。。。。不多说。
下面的Package是包嘛,随你便咯!搞定,Finish即可!
然后,等吧!Maven会下载需要的jar文件!这可能会让第一次使用Maven的人感觉到很不爽!至少我是很不爽!国内网速比较慢!所以下载需要不少时间!但是第一次下载完后,以后再建项目时它不会再下载的!
创建完成后,就项目就会像这个样子!

是不是感觉很别扭!java文件在,src/main/java下面,资源文件在src/main/resources下面,还有对应的test目录。这个应该是个习惯问题!慢慢就好!
目前这个项目是Struts2+Spring的项目!里面就有基本代码!
发布内容在src/main/webapp下面,找到index.jsp,右击,run on server即可运行了!
现在所有的java类都在src/main/java目录下,下面并没有struts.xml文件,它被放到了src/main/resources下面了,部署时会自动拷贝过去的!不用担心!
现在添加Hibernate,打开pom.xml文件,在项目根目录下!你会发现有很多的视图方式,具体看上面的翻译即可!
修改pom.xml文件,直接到代码区,放心,不需要你敲任何代码!右击鼠标,找到Maven,add dependency,输入hibernate,找到org.hibernate,点中需要的jar,点OK即可!我下过了,所以显好红色!eclipse会自动的下载需要的依赖包!

这里面,Maven仓库可能有点问题,jta包,1.0.1B版本没有,所以,自己选择jta1.1下载!

依然,是eclipse自动的下载jar,不需要你找到jar去copy到WEB-INF/lib下了!当然,只下载一次!
最后,当然就是配置Hibernate了,配置方法就不多说了吧!
使用Maven有什么好处呢?
首先是,jar统一管理了!如果建立了一个本地的jar仓库,那么所有人都是从仓库里面下载jar,拷贝项目时只需要copy几K的源码即可!
其次,依然是仓库,使得每个人的jar版本都是一致的,不会出现因为版本不同,引起的莫名其妙的错误。
再来,项目的自动化,只需要mvn package命令,在eclipse里面,看run里面,只需要选择就行了!它会自动的从编译,测试开始,一直到打包,自动的运行,保证你的包没有问题。
上面的作用对我没什么诱惑力!我使用Maven是因为,可以在IDE之间自由的切换!
不知道大家有没有这样的经历!eclipse创建的项目,要到netbeans或者idea下面跑,要修改一堆东西!
而现在,只要IDE装了Maven插件,就可以随便用IDE了。对于eclipse和idea。不装Maven插件都可以,只需要在项目根目录下运行 mvn eclipse:eclipse,mvn idea:odea。完成后,当作普通的eclipse,idea工程打开就可以了,非常的方便!
当然了,不喜欢Maven,只需要按以往的方式开发就可以了,只不过就是目录结构不一样了!

你可能感兴趣的:(spring,maven,Hibernate,项目管理,配置管理)