用maven和appfuse快速构建SSH项目

    技术2022-05-18  10

    Appfuse是由Matt Raible开发的一个指导性的入门级J2EE框架,它对如何集成流行的SpringHibernateiBatisstrutsXdcoletjunit 等基础框架给出了示范。提供了对TaperstryJSF的支持。

     

    在持久层方面,AppFuse可以使用Hibernate O/R映射工具、iBatis

      

    使用AppFuse 的七个理由

    在容器方面,它采用了Spring Framework

      web框架方面,用户可以自由选择StrutsSpring/MVCWebworkTaperstryJSF这几个web框架。

      在开发模式方面,采用TDD的开发方式,使用JUnit测试各层,甚至测试 jsp 输出的 w/o 错误。

    简化开发方面,Appfuse预定义好了一套目录结构、基类、用来创建数据库、配置Tomcat、测试部署应用的 Ant 任务,帮助快速自动生成源程序和自动维护部分配置文件

     

     

    下面介绍如何使用appfuse快速生成SSH项目:

    mavenappfuse生成项目时,版本需要对应,不然容易出现不兼容的情况,最好是用appfuse2.0.2搭配maven2.2.1,生成过程会比较顺利。

    步骤:

    1)安装相关软件:JDKMysqlMaven并配置相关的环境变量;

    2)修改Mavensetting.xml文件中的localReposity,保证其指向的文件夹不含有汉字和空格;

    3)输入以下语句,创建工程:

    mvn archetype:create

    -DarchetypeGroupId=org.appfuse.archetypes

    -DarchetypeArtifactId=appfuse-basic-struts -DremoteRepositories=http://static.appfuse.org/releases

    -DarchetypeVersion=2.0.1

    -DgroupId=com.cn.ibm -DartifactId=democenter

     

    4)输入:mvn appfuse:full-source  下载工程源码

    5)修改pom.xml文件中的database setting,默认的数据库用户密码为空,将其改成相应的密码;

    6)输入:mvn   下载相应的软件,比如jetty,主要是保障工程运行的组件;

    7)输入:mvn jetty:run-war  将工程部署到jetty上;

    8)在浏览器地址上输入:http://localhost:8080  可以浏览生成的工程;

    9)执行 mvn eclipse:eclipse 生成eclipse项目信息的文件,使用eclipse导入项目,建议重新生成一个webproject,将代码和页面复制到相应的目录,这时会遇到source文件夹的问题,可以添加新的src文件夹并嵌套原有文件夹就行;

    10)修改jdbcs.properties文件,因为该文件是从pom.xml文件读取数据库信息的,而在eclipse项目中去除了pom.xml文件,需要修改该文件如下:#jdbc.driverClassName=${jdbc.driverClassName} 

    jdbc.driverClassName=com.mysql.jdbc.Driver

    #jdbc.url=${jdbc.url} 

    jdbc.url=jdbc:mysql://localhost/democenter?createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=utf-8

    #jdbc.username=${jdbc.username} 

    jdbc.username=root

    #jdbc.password=${jdbc.password} 

    jdbc.password=123

     

    #hibernate.dialect=${hibernate.dialect} 

    hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect

     

    # Needed by Hibernate3 Maven Plugin defined in pom.xml 

    hibernate.connection.username=${jdbc.username}

    hibernate.connection.password=${jdbc.password}

    hibernate.connection.url=${jdbc.url}

    hibernate.connection.driver_class=${jdbc.driverClassName}

     

    11)中文乱码问题:将eclipse项目的编码格式改成utf8方式,同时在classes目录下,添加一个bat文件,内容如下:

    native2ascii.exe -encoding utf-8 ApplicationResources_zh_CN.properties ApplicationResources_zh_CN.properties2

    del  ApplicationResources_zh_CN.properties

    rename ApplicationResources_zh_CN.properties2 ApplicationResources_zh_CN.properties

     

    native2ascii.exe -encoding utf-8 displaytag_zh_CN.properties displaytag_zh_CN.properties2

    del  displaytag_zh_CN.properties

    rename displaytag_zh_CN.properties2 displaytag_zh_CN.properties

     

     

    native2ascii.exe -encoding utf-8 errors_zh_CN.properties errors_zh_CN.properties2

    del  errors_zh_CN.properties

    rename errors_zh_CN.properties2 errors_zh_CN.properties

    在项目编译完成后,部署到tomcat前,运行该文件。

     

    12)此时项目可以在eclipse中使用tomcat运行,运行结果如下:


    最新回复(0)