1.准备工作
下载 Webx Maven 项目的目录结构Artifact插件。
archetype-webx-quickstart-1.0.tar.gz插件:http://central.maven.org/maven2/com/alibaba/citrus/sample/archetype-webx-quickstart/1.0/archetype-webx-quickstart-1.0.jar 将插件zip包解压缩到Maven本地仓库 $USER_HOME/.m2/repository 目录下。
2.创建项目
在命令行中执行如下命令:
mvn archetype:generate -DgroupId=com.webx.demo -DartifactId=webxdemo -Dversion=1.0-SNAPSHOT -Dpackage=com -DarchetypeArtifactId=archetype-webx-quickstart -DarchetypeGroupId=com.alibaba.citrus.sample -DarchetypeVersion=1.0 -DinteractiveMode=false
项目创建后,在项目目录下运行命令:
mvn eclipse:eclipse
就可以生成eclipse的项目,然后在eclipse中导入这个项目
webapp/app1/templates用来存放应用app1的页面的模板vm文件;
WEB-INF/app1/form.xml是应用app1表单验证的配置文件;
WEB-INF/webx-app1.xml是子应用app1的webx配置;
3.配置数据源
在classpath下创建一个springDataSource.xml数据源配置文件,内容如下:
1 <?xml version="1.0" encoding="UTF-8"?> 2 <beans xmlns="http://www.springframework.org/schema/beans" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" 4 xmlns:p="http://www.springframework.org/schema/p" xmlns:tx="http://www.springframework.org/schema/tx" 5 xmlns:aop="http://www.springframework.org/schema/aop" 6 xsi:schemaLocation="http://www.springframework.org/schema/beans 7 http://www.springframework.org/schema/beans/spring-beans-2.5.xsd 8 http://www.springframework.org/schema/context 9 http://www.springframework.org/schema/context/spring-context-2.5.xsd 10 http://www.springframework.org/schema/aop 11 http://www.springframework.org/schema/aop/spring-aop-2.5.xsd 12 http://www.springframework.org/schema/tx 13 http://www.springframework.org/schema/tx/spring-tx-2.5.xsd"> 14 <!-- 开启对注解的扫描 --> 15 <context:component-scan base-package="com" /> 16 <!-- 数据库配置 --> 17 <bean id= "dataSource" class="org.apache.commons.dbcp.BasicDataSource"> 18 <property name="driverClassName" value="com.mysql.jdbc.Driver"></property> 19 <property name="url" value="jdbc:mysql://localhost:3306/messageboard"></property> 20 <property name="username" value="root"></property> 21 <property name="password" value="root"></property> 22 <property name="minIdle" value="0" ></property> 23 <property name="maxWait" value="-1"></property> 24 </bean> 25 <!-- spring事务 --> 26 <bean id="transactionManager" 27 class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> 28 <property name="dataSource" ref="dataSource" /> 29 </bean> 30 <bean id="transactionTemplate" 31 class="org.springframework.transaction.support.TransactionTemplate"> 32 <property name="transactionManager" ref="transactionManager"></property> 33 </bean> 34 <!-- iBatis SQL map定义 --> 35 <bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean"> 36 <property name="dataSource" ref="dataSource" /> 37 <property name="configLocation" value="classpath:sqlmap-config.xml" /> 38 </bean> 39 </beans>
在classpath:sqlmap-config.xml中配置ibatits的配置文件
将springDataSource.xml引入webx.xml,如下所示
<!-- 加载数据源配置 --> <beans:import resource="classpath:springContext.xml"/>
4.增加ibatits,mysql驱动及数据库连接池的依赖包
1 <!-- 设置依赖包的版本号 --> 2 <properties> 3 <!-- 设置ibatits的依赖版本号 --> 4 <ibatis-version>2.3.4.726_4</ibatis-version> 5 <!-- 设置连接池的依赖版本号 --> 6 <dbcp-version>1.2.2</dbcp-version> 7 <!-- 设置mysql驱动的依赖版本号 --> 8 <mysql-version>5.1.6</mysql-version> 9 </properties>
1 <!-- 设置依赖包 --> 2 <dependencies> 3 ...... 4 <!-- 集成ibatits的依赖包 --> 5 <dependency> 6 <groupId>commons-dbcp</groupId> 7 <artifactId>commons-dbcp</artifactId> 8 </dependency> 9 <dependency> 10 <groupId>org.apache.servicemix.bundles</groupId> 11 <artifactId>org.apache.servicemix.bundles.ibatis-sqlmap</artifactId> 12 </dependency> 13 <!-- 集成mysql驱动jar包 --> 14 <dependency> 15 <groupId>mysql</groupId> 16 <artifactId>mysql-connector-java</artifactId> 17 <version>5.1.6</version> 18 </dependency> 19 </dependencies>
1 <!-- 依赖包管理 --> 2 <dependencyManagement> 3 <dependencies> 4 ..... 5 <!-- ibatits依赖包 --> 6 <dependency> 7 <groupId>commons-dbcp</groupId> 8 <artifactId>commons-dbcp</artifactId> 9 <version>${dbcp-version}</version> 10 </dependency> 11 <dependency> 12 <groupId>org.apache.servicemix.bundles</groupId> 13 <artifactId>org.apache.servicemix.bundles.ibatis-sqlmap</artifactId> 14 <version>${ibatis-version}</version> 15 </dependency> 16 <!-- mysql驱动依赖包 --> 17 <dependency> 18 <groupId>mysql</groupId> 19 <artifactId>mysql-connector-java</artifactId> 20 <version>${mysql-version}</version> 21 </dependency> 22 </dependencies> 23 </dependencyManagement>
4.基础业务代码的书写同spring mvc
5.部署webx项目
1)直接部署
在项目目录下执行如下命令:
1 mvn jetty:run
2)生成war部署包
1 mvn -Dmaven.test.skip clean package
然后进入WebxTest/target目录,找到WebxTest.war,将其拷贝到任意 web application server下。这里假设server是 tomcat,将war拷贝到tomcat/webapps 下。最后,启动 tomcat,通过浏览器访问 http://localhost:8080/WebxTest/index.htm