先将Spring和Mybatis整合
1.加入 mybatis 的 jar 包和配置文件: 实际上需要配置的就是 settings 的部分。
1
2
3
4
5
6
7
8
9
10
11
|
<?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> <!--
settings标签可以设置多个属性值 --> <settings> <!--
setting标签负责每一个属性的设置 --> <setting
name= "mapUnderscoreToCamelCase" value= "true" /> </settings> </configuration> |
2. 加入 Spring 的 jar 包和配置文件(官网:www.fhadmin.org)
之前是在 mybatis-config.xml 获取 sqlSessionFactory 和扫描 mapper 接口
但是现在 mybatis-config.xml 只有 settings
所以在 bean.xml 中配置获得 sqlSessionFactory 和扫描 mapper 接口
Spring具体配置参见上篇《Spring+SpringMVC的整合》
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
|
<context:component-scan
base- package = "com.neuedu" > <context:exclude-filter
type= "annotation" expression= "org.springframework.stereotype.Controller" /> <context:exclude-filter
type= "annotation" expression= "org.springframework.web.bind.annotation.ControllerAdvice" /> </context:component-scan> <!--
加载外部属性文件 --> <context:property-placeholder
location= "classpath:jdbc.properties" /> <!--
配置C3P0 数据源 --> <bean
id= "comboPooledDataSource" class = "com.mchange.v2.c3p0.ComboPooledDataSource" > <property
name= "user" value= "${jdbc.username}" ></property> <property
name= "password" value= "${jdbc.password}" ></property> <property
name= "driverClass" value= "${jdbc.driver}" ></property> <property
name= "jdbcUrl" value= "${jdbc.url}" ></property> </bean> <!--
配置事务管理器 --> <bean
id= "dataSourceTransactionManager" class = "org.springframework.jdbc.datasource.DataSourceTransactionManager" > <property
name= "dataSource" ref= "comboPooledDataSource" ></property> </bean> <!--
开启基于注解的事务 --> <tx:annotation-driven
transaction-manager= "dataSourceTransactionManager" /> <!--
配置sqlSessionFactory --> <bean
id= "sqlSessionFactoryBean" class = "org.mybatis.spring.SqlSessionFactoryBean" > <property
name= "dataSource" ref= "comboPooledDataSource" ></property> <property
name= "configLocation" value= "classpath:mybatis-config.xml" ></property> </bean> <!--
批量扫描mapper接口包 --> <bean
id= "mapperScannerConfigurer" class = "org.mybatis.spring.mapper.MapperScannerConfigurer" > <property
name= "basePackage" value= "com.neuedu.sm.mapper" ></property> </bean> |
3.Test 测试
1
2
3
4
5
6
7
8
9
|
public class TestEmployeeMapper
{ private ApplicationContext
ioc = new ClassPathXmlApplicationContext( "bean.xml" ); @Test public void test()
{ EmployeeMapper
bean = ioc.getBean(EmployeeMapper. class ); Employee
employee = bean.getEmpById( 1 ); System.out.println(employee); } } |
以上Spring+Mybatis的配置基本完毕
将 SpringMVC整合到上面的项目中(官网:www.fhadmin.org)
1.配置SpringMVC 配置文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
<context:component-scan
base- package = "com.neuedu" use- default -filters= "false" > <context:include-filter
type= "annotation" expression= "org.springframework.stereotype.Controller" /> <context:include-filter
type= "annotation" expression= "org.springframework.web.bind.annotation.ControllerAdvice" /> </context:component-scan> <!--
配置视图解析器 --> <bean class = "org.springframework.web.servlet.view.InternalResourceViewResolver" > <property
name= "prefix" value= "/WEB-INF/views/" ></property> <property
name= "suffix" value= ".jsp" ></property> </bean> <!--
处理静态资源 --> <mvc: default -servlet-handler/> <mvc:annotation-driven/> |
2.创建相应的Controller、Service
3.在Controller层获取页面传来的数据,调用Service层方法【SpringMVC】
Service层调用Mapper接口,【Mybatis】
Mapper接口中有相应的方法,与sql映射文件相对应【Mybatis】