SSM整合

集成思路和步骤

0.创建项目,添加依赖和插件
1.Spring 集成 MyBatis,通过单元测试,保证 CRUD 测试通过
2.加入事务控制,通过单元测试,保证后台事务控制测试通过
3.Spring 集成 Spring MVC,通过浏览器测试,保证前台 Web 版 CRUD 测试通过

Spring+MyBatis(Spring 配置)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
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.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">

<!-- 加载 db.properties 文件 -->
<context:property-placeholder location="classpath:db.properties" system-properties-mode="NEVER"/>

<!-- 创建 DataSource 对象 -->
<bean id="myDataSource" class="com.alibaba.druid.pool.DruidDataSource"
init-method="init" destroy-method="close">
<property name="driverClassName" value="${jdbc.driverClassName}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</bean>

<!-- 创建 SqlSessionFactory 对象 -->
<bean id="mySqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">

<!--关联 dataSource 对象 -->
<property name="dataSource" ref="myDataSource"/>

<!--加载 MyBatis 全局配置文件 -->
<property name="configLocation" value="classpath:MyBatis-config.xml"/>

<!--为哪些包下的类起别名 -->
<property name="typeAliasesPackage" value="cn.wolfcode.ssm.domain"/>

<!--加载Mapper映射配置文件 -->
<property name="mapperLocations" value="classpath:mappers/*Mapper.xml"/>
</bean>

<!-- 创建 Mapper 接口的代理对象 -->
<bean id="userMapper" class="org.mybatis.spring.mapper.MapperFactoryBean">

<!-- 关联 sqlSessionFactory -->
<property name="sqlSessionFactory" ref="mySqlSessionFactory"/>

<!-- 根据哪一个接口创建代理对象 -->
<property name="mapperInterface" value="cn.wolfcode.ssm.mapper.UserMapper"/>
</bean>
</beans>

设置mybatis的配置信息

1
2
3
4
5
6
7
8
9

<!--设置 MyBatis 配置信息 -->
<property name="configurationProperties">
<value>
lazyLoadingEnabled=true
aggressiveLazyLoading=false
lazyLoadTriggerMethods=clone
</value>
</property>