tapestry+spring+hibernate 用maven整合(一:maven篇)

来源:互联网 发布:音乐网页源码 编辑:程序博客网 时间:2024/06/08 11:58

主要采用maven分模块和spring注解完成框架的搭建。

一、目录结构:

pom.xml设置整个项目的设置,包括:依赖、版本、组、JDK等全局信息。

<project xmlns="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.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.vxichina</groupId><artifactId>visionrcp</artifactId><version>${rcp-release-version}</version><packaging>pom</packaging><description>订餐项目</description><!-- 设定团队持续集成发布包服务器 --><!-- <distributionManagement> <repository> <id>nexus</id> <name>Team Nexus Release Repository</name> <url>http://192.168.1.111:8081/nexus/content/repositories/releases</url> </repository> <snapshotRepository> <id>nexus</id> <name>Team Nexus Snapshot Repository</name> <url>http://192.168.1.111:8081/nexus/content/repositories/snapshots</url> <uniqueVersion>false</uniqueVersion> </snapshotRepository> </distributionManagement> <scm> <connection>scm:svn:https://192.168.1.111:8443/svn/denong/pb/trunk</connection> <url>https://192.168.1.111:8443/svn/denong/pb/trunk</url> </scm> --><modules><module>visionrcp-common</module><module>visionrcp-dao</module><module>visionrcp-service</module><module>visionrcp-weborder</module></modules><build><defaultGoal>install</defaultGoal><pluginManagement><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>1.6</source><target>1.6</target></configuration></plugin></plugins></pluginManagement></build><dependencies><dependency><groupId>org.apache.geronimo.specs</groupId><artifactId>geronimo-servlet_2.5_spec</artifactId><scope>provided</scope></dependency><dependency><groupId>org.apache.geronimo.specs</groupId><artifactId>geronimo-jsp_2.1_spec</artifactId><scope>provided</scope></dependency><dependency><groupId>org.testng</groupId><artifactId>testng</artifactId><scope>test</scope></dependency><dependency><groupId>org.easymock</groupId><artifactId>easymock</artifactId><scope>test</scope></dependency><dependency><groupId>org.apache.tapestry</groupId><artifactId>tapestry-spring</artifactId></dependency><dependency><groupId>org.hibernate</groupId><artifactId>hibernate-ehcache</artifactId></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-orm</artifactId></dependency><dependency><groupId>net.sourceforge.jtds</groupId><artifactId>jtds</artifactId><version>1.2.4</version><scope>runtime</scope></dependency><dependency><groupId>commons-lang</groupId><artifactId>commons-lang</artifactId><version>2.5</version></dependency><dependency><groupId>net.sf.json-lib</groupId><artifactId>json-lib</artifactId><version>2.3</version><type>jar</type><classifier>jdk15</classifier><scope>compile</scope></dependency><dependency><groupId>net.sf.jxls</groupId><artifactId>jxls-core</artifactId><version>1.0-RC-1</version><type>jar</type><scope>compile</scope></dependency><dependency><groupId>commons-betwixt</groupId><artifactId>commons-betwixt</artifactId><version>0.8</version><type>jar</type><scope>compile</scope></dependency>       <!-- 发邮件需要依赖 --><dependency><groupId>javax.mail</groupId><artifactId>mail</artifactId><version>1.4.4</version></dependency><dependency><groupId>freemarker</groupId><artifactId>freemarker</artifactId><version>2.3.8</version></dependency><dependency>  <groupId>org.springframework</groupId>  <artifactId>spring-webmvc</artifactId>  <version>3.0.6.RELEASE</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-beans</artifactId><version>3.0.5.RELEASE</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>3.0.5.RELEASE</version></dependency> <!-- end 发邮件需要依赖 --><dependency><groupId>org.aspectj</groupId><artifactId>aspectjweaver</artifactId><version>1.6.7</version></dependency><dependency>  <groupId>org.springframework</groupId>  <artifactId>spring-tx</artifactId>  <version>3.0.6.RELEASE</version></dependency><dependency>  <groupId>aspectj</groupId>  <artifactId>aspectjrt</artifactId>  <version>1.5.3</version></dependency><dependency>  <groupId>org.springframework</groupId>  <artifactId>spring-aspects</artifactId>  <version>3.0.6.RELEASE</version></dependency><dependency>  <groupId>cglib</groupId>  <artifactId>cglib</artifactId>  <version>2.2.2</version></dependency><dependency>  <groupId>c3p0</groupId>  <artifactId>c3p0</artifactId>  <version>0.9.1.2</version></dependency></dependencies><dependencyManagement><dependencies><dependency><groupId>org.apache.geronimo.specs</groupId><artifactId>geronimo-servlet_2.5_spec</artifactId><version>1.2</version></dependency><dependency><groupId>org.apache.geronimo.specs</groupId><artifactId>geronimo-jsp_2.1_spec</artifactId><version>1.0.1</version></dependency><dependency><groupId>org.testng</groupId><artifactId>testng</artifactId><version>5.12.1</version></dependency><dependency><groupId>org.easymock</groupId><artifactId>easymock</artifactId><version>2.5.2</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring</artifactId><version>2.5.6</version></dependency><dependency><groupId>org.apache.tapestry</groupId><artifactId>tapestry-spring</artifactId><version>5.2.6</version></dependency><dependency><groupId>org.apache.tapestry</groupId><artifactId>tapestry-hibernate</artifactId><version>5.2.6</version></dependency><dependency><groupId>org.hibernate</groupId><artifactId>hibernate-ehcache</artifactId><version>3.6.0.Final</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-orm</artifactId><version>3.0.0.RELEASE</version></dependency></dependencies></dependencyManagement><distributionManagement><repository><id>nexus-releases</id><name>Nexus Release Repository</name><url>http://sh-pc-esbu001:8081/nexus/content/repositories/releases/</url></repository><snapshotRepository><id>nexus-snapshots</id><name>Nexus Snapshot Repository</name><url>http://sh-pc-esbu001:8081/nexus/content/repositories/snapshots/</url></snapshotRepository></distributionManagement><properties><rcp-release-version>1.0-SNAPSHOT</rcp-release-version></properties></project>
distributionManagement 元素用于发布产品库。maven的 seetings.xml需要设置server:

 <servers>     

      <server>

            <id>releases</id>
            <username>admin</username>
            <password>admin123</password>
        </server>
        <server>
             <id>snapshots</id>
             <username>admin</username>
             <password>admin123</password>
        </server>

</servers>

和镜像:

  <mirrors>
        <mirror>
          <id>nexus</id>
          <mirrorOf>*</mirrorOf>
          <url>http://127.0.0.1:8081/nexus/content/groups/public</url>
        </mirror>
  </mirrors>

此项目包括四个子目录:

        <modules><module>visionrcp-common</module><module>visionrcp-dao</module><module>visionrcp-service</module><module>visionrcp-weborder</module></modules>
visionrcp-common  属于最底层。用于辅助实现其它层的页面逻辑

visionrcp-dao     依赖 visionrcp-common  数据库与项目的接口

visionrcp-service  业务逻辑层,依赖visionrcp-dao。

visionrcp-weborder web层,依赖visionrcp-service


原创粉丝点击