【转】手把手构建Maven企业级应用(整合SSI框架)

    网上其实整合框架的资料其实很多的,但是其中整合SSI的相对比较少的,如果是用Maven整合的就是少之又少的,如果是用Maven构建的企业级应用(多模块开发)整合SSI框架的实例基本上是没有的,所以写下这篇教程(当然这个教程其实算是入门级的多模块应用程序开发),希望那些新手们做类似的开发时可以少走些弯路,当然也热烈欢迎大牛指点不足。

废话不再多说,下面我们开始:

首先我们必须搭建起Maven运行环境,当然这里是在你已经有Java运行环境的前提这下进行的:

1、下载Maven,现在最新版本为Maven 2.2.1,下载地址为http://maven.apache.org/download.html

2、解压下载的apache-maven-2.2.1-bin.tar.gz(若你的是Windows环境你也可以选择apache-maven-2.2.1-bin.zip,都是差不多的),到任意目录下面,比如我的目录为/home/用户名/develop/programs

3、配置Maven的环境变量,配置M2_HOME,例如我的配置M2_HOME=/home/用户名/develop/programs/apache-maven-2.2.1,然后将M2_HOME加入到PATH当中

4、验证Maven环境是否搭建成功,打开shell窗口(Windowscmd窗口),输入命令:

命令如下:

1 mvn-v

如果出现下属信息即算搭建成功:

显示信息如下:

1Apache Maven 2.2.1 (r801777; 2009-08-07 03:16:01+0800) 
2 Java version: 1.6.0_18 
3 Java home: /home/用户名/develop/programs/jdk1.6.0_18/jre 
4Defaultlocale: zh_CN, platform encoding: UTF-8 
5 OS name: "linux"version: "2.6.31-20-generic" arch:"i386" Family: "unix" 

5、此时环境已经搭建OK了,下面我们就开始Maven构建企业级应用开发

 

下面我们构建我们项目的骨架,假定我们的项目为verticalmarket的一个项目,那么我们知道这个父工程下面我们要为其建立子模块,主要是把表示层、业务层及持久层分为不同的模块,其项目结构大致如下:

1verticalmarket-dal 
2 verticalmarket-manager 
3 verticalmarket-service 
4 verticalmarket-config 
5 verticalmarket-web 

当然结构可以随意,按照你们自己约定俗成的就可以,这个仅为一个例子,下面就让我们开始创建这个工程,当然Maven的一些基础知识我不在说明了,可以看下Sonatype公司的教程Maven权威指南。

1、构建verticalmarket的父母录,在你的任意目录下,打开shell窗口(Windowscmd),输入命令:

1 mvnarchetype:create -DgroupId=com.tkz.verticalmarket -DartifactId=verticalmarket 

2、在生成的verticalmarket文件夹下面我们可以看到一个src文件夹和一个pom.xml,删除src文件夹,然后修改pom文件

 1<?xmlversion="1.0" encoding="UTF-8"?> 
 2<projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0http://maven.apache.org/maven-v4_0_0.xsd"> 
 3   <modelVersion>4.0.0</modelVersion> 
 4   <groupId>com.tkz.verticalmarket</groupId> 
 5   <artifactId>verticalmarket</artifactId> 
 6   <packaging>pom</packaging> 
 7   <version>1.0</version> 
 8   <name>verticalmarket</name> 
 9   <url>http://maven.apache.org</url> 
10   <dependencyManagement> 
11   <dependencies> 
12     <dependency> 
13       <groupId>junit</groupId> 
14       <artifactId>junit</artifactId> 
15       <version>4.0</version> 
16       <scope>test</scope> 
17     </dependency> 
18   </dependencies> 
19   </dependencyManagement> 
20</project> 

其中修改的重点为打包方式改为pom形式,这也就意味这这是一个父工程,另外版本号默认是SNAPSHOT意思是快照的意思,就是项目开发中的意思,你要是看着不爽可以把它删掉,另外需要说明一下dependencyManagement标签,这个标签表示子类可以隐式的继承父pom文件的依赖库,在子pom中不需要指定版本号,推荐这样,这样可以方便开发,你要修改什么依赖的版本只需要更改父pom就可以了,dependencies是显示继承,你要是在子pom中声明,就必须写明版本号,不写默认就继承了。

3、下面我们构建子工程项目,进入verticalmarket目录下,输入命令:

1 mvnarchetype:create -DgroupId=com.tkz.verticalmarket-DartifactId=verticalmarket-dal -Dpackage=com.tkz.verticalmarket.dal 

然后在父目录下面就生成了verticalmarket-dal子工程,此时父pom文件自动添加项目关系:

1<modules> 
2     <module>verticalmarket-dal</module> 
3</modules> 

这就表示这个工程是verticalmarket子工程,同样道理,其他命令如下:

1 mvnarchetype:create -DgroupId=com.tkz.verticalmarket-DartifactId=verticalmarket-manager-Dpackage=com.tkz.verticalmarket.manager  
2 mvn archetype:create-DgroupId=com.tkz.verticalmarket -DartifactId=verticalmarket-service-Dpackage=com.tkz.verticalmarket.service 
3
mvn archetype:create -DgroupId=com.tkz.verticalmarket-DartifactId=verticalmarket-config -Dpackage=com.tkz.verticalmarket.config 
4
mvn archetype:create -DgroupId=com.tkz.verticalmarket-DartifactId=verticalmarket-web -Dpackage=com.tkz.verticalmarket.web-DarchetypeArtifactId=maven-archetype-webapp 

最后的-DarchetypeArtifactId=maven-archtype-webapp,表示这个是web程序结构,其他的默认就是java程序结构
4
、然后可以执行命令:

1 mvneclipse:clean eclipse:eclipse 

即生成了eclipse结构,导入到eclipse中你既可以看到你的一个多模块程序,到目前为止这个程序骨架就算搭建完成了,下一步我们考虑如何整合SSI程序到这个多模块程序中

下面我们进行SSI整合到Maven构建的程序之中,首先你需要选定你需要整合的版本,因为Maven依赖关系是需要指定Version的,下面是我整合所需要的SSI版本(我用Maven的依赖关系表示):

 1 <!--Spring--> 
 2<dependency> 
 3   <groupId>org.springframework</groupId> 
 4  <artifactId>spring</artifactId> 
 5   <version>2.5.6</version> 
 6</dependency> 
 7<!--Ibatis--> 
 8<dependency> 
 9  <groupId>org.apache.ibatis</groupId> 
10  <artifactId>ibatis-sqlmap</artifactId> 
11   <version>2.3.4.726</version> 
12 </dependency> 
13 <!--Struts2--> 
14 <dependency> 
15  <groupId>org.apache.struts</groupId> 
16  <artifactId>struts2-core</artifactId> 
17   <version>2.1.8.1</version> 
18 </dependency> 

当然有的新手可能会问,有些依赖我怎么知道Maven的官方依赖中有没有呢,我怎么知道他有没有这个版本的呢,其实解决办法也很简单,大致可以分为两种:

1、去Google上面搜索,你可以这样搜索会更容易搜些:例如我们准备搜下spring的版本,可以这样写关键词的“maven spring repository”,这样搜索记录的第一条基本上就是的。

2、自己在Maven本地的仓库中建立依赖关系,默认是在.m2/repository文件夹下面,其中如何建立我不在详细介绍,按照默认的样式建就可以的,如果是自己生成的Jar依赖的话,就必须用这种形式了。

那行,下面我们首先进行Spring 所需的依赖配置,首先你在你的父Pom中的dependencies标签下面写上上述Springdependency,然后你执行命令mvn eclipse:clean eclipse:eclipse,然后在你的eclipse的目录结构中就会spring-2.5.6.jar这个依赖的(ps.当然这个你要在eclipse中配置一下你的path,这里我不在赘述),同样配置Ibatis也是一样的做法,下面我们首先把springibatis整合起来,其实如何整合最好的教程就是spring自带的官方reference的,你可以参考上面的配置,七大概的位置实在中间层数据访问/使用ORM工具进行数据访问(当然我的是中文的reference)。

参考上面的配置我们即可配置一个demo,当然在这里我们需要主要的是xml文件我们为了统一,我们都会放在verticalmarket-config子工程下面,所以让我们在verticalmarket-dal中引用这些xml配置文件的时候我们要配置项目依赖的,其配置和配置第三方包依赖差不多,下面是我的依赖:

1<dependency> 
2   <groupId>com.tkz.verticalmarket</groupId> 
3   <artifactId>verticalmarket-config</artifactId> 
4    <version>1.0</version> 
5  </dependency> 

至于其他的一些灵活配置,大家最好看Maven的官方文档资料,最重要的是多动手实践,这样子才会发现问题,更好的解决问题。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值