一个SSM框架的maven archetype

基于上次SSH的maven archetype发布之后,小弟又练了练手,边学边做,弄了一个SSM的maven archetype,SSM即为struts2.2,spring3.0.5和mybatis3.0.5(mybatis即为原先的ibatis,现在和 apache分家,独立出来了),同样的,该archetype能自动产生SSM框架,并附带了一个能运行于mysql,oracle,ms-sql和 sybase数据库的test示例。你只需解压并拷贝附件的archetype到你的本地maven库根目录,然后在命令行运行:
mvn archetype:generate -DarchetypeGroupId=com.hengtiansoft.archetypes -DarchetypeArtifactId=struts2-spring3-mybatis3-archetype -DarchetypeVersion=1.0-SNAPSHOT
,然后输入你的groupId(公司项目组名称,通常是com.xxx.xxx形式),artifactId(项目名称),其他默认回车即可,即 能产生基于模块的SSM工程,该工程的test示例程序如同前文的SSH框架一样,兼容mysql,oracle,sqlserver和sybase的任 何版本,你只需在打war包时指定host和数据库类型即可,不必关心任何其他事情,比如要打成本地mysql环境的war包,只需执行命令mvn clean install即可(后面不必带-P参数,因为在父POM中默认激活该选项),要打成测试oracle环境的war包,只需执行命令mvn clean install -Ptest,oracle,要打成产品ms-sql环境的war包,只需执行mvn clean install -Pprod,sqlserver,当然,如果你明确知道自己使用的数据库类型的话,你甚至可以在父pom中直接设置缺省激活值(参考父POM中的 localhost和mysql的缺省设置)而不必每次都加上-P参数。目前支持的地址选项A为:dev,test,prod,支持的数据库类型B 为:mysql,oracle,sqlserver,sybase,即 -PA,B 形式的任意组合,在使用这些组合之前,记得在父POM中修改成你自己的对应地址和数据库名称(profiles标签处)。

用archetype生成SSM工程之后,你会发现所有的包版本指定都在父POM中,这样如果你要修改一个依赖时就非常方便,当然如果你要添加一 个依赖,也最好在父POM中指定版本,父POM还配置了很多site插件,比如PMD,checkstyle,javadoc等等,在你用mvn clean site命令生成项目站点时(默认在d:\tmp下),将会得到非常详细的项目信息和代码质量报告,至于JDK和maven的安装以及test数据表的配 置(为运行test示例程序),你参考前文的SSH archetype介绍。

test示例程序所实现的功能和前文所示的TEST程序几乎一样,所不同的是,此处用了mybatis3的注解,而前文是hibernate3的 注解(spring同样用注解,但版本升级至3.0.5和struts用xml配置没变),其他功能如AOP拦截器,Struts拦截器,事务管理 器,c3p0数据库连接池和log4j和slf4j等等功能都没有变化,当然你所依赖的相关hibernate包(注意annotation功能已经集成 到了hibernate-core-3.6以上的jar版本中),将改成依赖mybatis的包,对于该SSM工程来说,需要两个jar包来实现 mybatis映射以及spring集成,它们是:mybatis-3.0.5.jar和mybatis-spring-1.0.1.jar。关于 mybatis的注解以及和spring的集成,我会在另外一篇博客里详细探讨。附件是SSM的maven archetype以及中英文详细操作说明文档。

小弟是个生手,很多东西也都是暴走GOOGLE,呵呵,有什么不对的还望指正。
原文地址:https://www.cnblogs.com/lexus/p/2344727.html