一、准备工作
首先去找struts的. http://struts.apache.org/ 下载最新的struts 2.3.7. (在发这篇文章前我发现已经升级到了2.3.8)
然后再去找spring的. http://www.springsource.org/spring-framework 下载spring-framework-3.2.0.RELEASE-dist
最后自然就是MyBatis3.0的 http://code.google.com/p/mybatis/downloads/list?can=3&q=Product%3DMyBatis 下载MyBatis的-3.1.1-bundle
二、提取需要用到的jar
这里呢,我就直接做ssm的整合。 不分解做。所以不理解的童鞋可以先照我的做。 下去后可以自己度娘,谷哥去找分解整合。
struts需要的jar: spring 所需的jar: MyBatis所需的jar 其他所需jar
struts2-core-2.3.7.jar spring-aop.jar mybatis-3.1.1.jar commons-dbcp-1.4.jar
xwork-core-2.3.7.jar spring-beans.jar mybatis-spring-1.0.0.jar commons-pool.jar
commons-fileupload-1.2.2.jar spring-context.jar dom4j.jar
commons-lang3-3.1.jar spring-core.jar log4j.jar
commons-logging-1.1.1.jar spring-jdbc.jar cglib-2.2.jar
freemarker-2.3.19.jar spring-orm.jar classes12.jar
ognl-3.0.5.jar spring-tx.jar
javassist-3.12.0.GA.jar spring-web.jar
commons-collections-3.1.jar spring-expression.jar
struts2-spring-plugin-2.3.7.jar
OK,我们已经提取出了整合所需的基本jar。 本人用的是oracle数据库,所以引入了classes12.jar。可以根据自己的需求换。
我们先把这些jar放到我们项目的lib下。这个我想大家都会。
到现在为止我们把所需要的jar全部导入进去了。 但是还没有关联。那么现在我们开始做关联配置。
jdbc.properties
到此为止,我们已经把框架整合到了一起。
部署到tomcat运行。
首先去找struts的. http://struts.apache.org/ 下载最新的struts 2.3.7. (在发这篇文章前我发现已经升级到了2.3.8)
然后再去找spring的. http://www.springsource.org/spring-framework 下载spring-framework-3.2.0.RELEASE-dist
最后自然就是MyBatis3.0的 http://code.google.com/p/mybatis/downloads/list?can=3&q=Product%3DMyBatis 下载MyBatis的-3.1.1-bundle
二、提取需要用到的jar
这里呢,我就直接做ssm的整合。 不分解做。所以不理解的童鞋可以先照我的做。 下去后可以自己度娘,谷哥去找分解整合。
struts需要的jar: spring 所需的jar: MyBatis所需的jar 其他所需jar
struts2-core-2.3.7.jar spring-aop.jar mybatis-3.1.1.jar commons-dbcp-1.4.jar
xwork-core-2.3.7.jar spring-beans.jar mybatis-spring-1.0.0.jar commons-pool.jar
commons-fileupload-1.2.2.jar spring-context.jar dom4j.jar
commons-lang3-3.1.jar spring-core.jar log4j.jar
commons-logging-1.1.1.jar spring-jdbc.jar cglib-2.2.jar
freemarker-2.3.19.jar spring-orm.jar classes12.jar
ognl-3.0.5.jar spring-tx.jar
javassist-3.12.0.GA.jar spring-web.jar
commons-collections-3.1.jar spring-expression.jar
struts2-spring-plugin-2.3.7.jar
OK,我们已经提取出了整合所需的基本jar。 本人用的是oracle数据库,所以引入了classes12.jar。可以根据自己的需求换。
我们先把这些jar放到我们项目的lib下。这个我想大家都会。
到现在为止我们把所需要的jar全部导入进去了。 但是还没有关联。那么现在我们开始做关联配置。
applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-3.0.xsd ">
<!-- 配置DataSource数据源 -->
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<value>classpath:jdbc.properties</value>
</property>
</bean>
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName" value="${db.driver}" />
<property name="url" value="${db.url}" />
<property name="username" value="${db.username}" />
<property name="password" value="${db.password}" />
<property name="initialSize" value="${db.initialSize}" />
<property name="maxActive" value="${db.maxActive}" />
<property name="validationQuery" value="${db.validationQuery}" />
<!--<property name="defaultAutoCommit" value="${db.defaultAutoCommit}"></property>
--></bean>
<!-- 配置事务管理器,注意这里的dataSource和SqlSessionFactoryBean的dataSource要一致,不然事务就没有作用了 -->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>
<!-- 创建SqlSessionFactory,同时指定数据源 -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<!--
<property name="configLocation" value="classpath:mybatis-config.xml"></property>
-->
</bean>
<!-- 配置事务的传播特性 -->
<bean id="baseTransactionProxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" abstract="true">
<property name="transactionManager" ref="transactionManager" />
<property name="transactionAttributes">
<props>
<prop key="add*">PROPAGATION_REQUIRED</prop>
<prop key="edit*">PROPAGATION_REQUIRED</prop>
<prop key="remove*">PROPAGATION_REQUIRED</prop>
<prop key="insert*">PROPAGATION_REQUIRED</prop>
<prop key="update*">PROPAGATION_REQUIRED</prop>
<prop key="del*">PROPAGATION_REQUIRED</prop>
<prop key="cancel*">PROPAGATION_REQUIRED</prop>
<prop key="*">readOnly</prop>
</props>
</property>
</bean>
<!-- 单独配置一个Mapper; 这种模式就是得给每个mapper接口配置一个bean -->
<!--
<bean id="accountMapper" class="org.mybatis.spring.mapper.MapperFactoryBean">
<property name="mapperInterface" value="com.hoo.mapper.AccountMapper" />
<property name="sqlSessionFactory" ref="sqlSessionFactory" />
</bean>
<bean id="companyMapper" class="org.mybatis.spring.mapper.MapperFactoryBean">
<property name="mapperInterface" value="com.hoo.mapper.CompanyMapper" />
<property name="sqlSessionFactory" ref="sqlSessionFactory" />
</bean>
-->
<!-- 通过扫描的模式,扫描目录在com/hoo/mapper目录下,所有的mapper都继承SqlMapper接口的接口, 这样一个bean就可以了 <br> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.mobile.mapper"/>
<property name="markerInterface" value="com.mobile.mapper.SqlMapper"/>
</bean>-->
</beans>
jdbc.properties
db.driver=oracle.jdbc.driver.OracleDriver
db.url=jdbc:oracle:thin:@localhost:1521:orcl
db.username=
db.password=
db.alias=OraclePool
db.minIdle=5
db.maxIdle=10
db.maxWait=5
db.maxActive=20
db.initialSize=10
db.logWriter=
db.validationQuery=SELECT 1 FROM DUAL
mybatis.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!-- 别名 -->
<typeAliases>
</typeAliases>
</configuration>
struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="my-default" abstract="true" extends="struts-default">
</package>
</struts>
到此为止,我们已经把框架整合到了一起。
部署到tomcat运行。