博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MyBatis数据持久化(十)与Spring4整合
阅读量:6157 次
发布时间:2019-06-21

本文共 2944 字,大约阅读时间需要 9 分钟。

前面几节介绍了mybatis的基本使用方法,本节主要介绍如何使用mybatis与主流的IoC容器Spring进行整合。

我们首先需要获取Spring框架的jar文件,在写本文时spring的最新Release版本为4.1.7,笔者采用的版本为4.0.0。
下面是Spring各个版本的下载地址列表:
Spring4.0.0版本下载地址:

下载后解压目录结构如下所示:

这里写图片描述
我们所需Jar包都存放在lib目录下,这里我们需要將以下几个必须的Jar包拷贝到工程中。
这里写图片描述
除此之外,我们还需要將下面几个Spring依赖的Jar包也添加到我们的项目中。
这里写图片描述

要将两者进行整合,我们还需要mybatis官方提供的支持spring的jar包mybatis-spring-1.2.3.jar。

下载地址:

接下来我们將mybatis与Spring进行整合。

1.新建数据库配置文件

新建一个数据库配置属性文件,名称为mysql.properties,内容如下:

driver=com.mysql.jdbc.Driverurl=jdbc:mysql://localhost:3306/mybatis?characterEncoding=UTF8username=rootpassword=

2.新建Spring配置文件

我们需要新建一个xml文件用于配置bean,名称为beas.xml内容如下:

3.新建mybaits配置文件

3.1.新建mybaits配置文件SqlMapConfig.xml,内容如下:

由于我们使用Spring来管理数据源,因此前面教程中的mybatis配置文件可以大大简化。

3.2.新建sql配置文件User.xml并增加一条sql配置。

insert into user(username,password,phone) values(#{username},#{password},#{phone});

4.创建DAO类

接下来我们新建一个Dao类,UserDao来对User表进行相关操作。

这里我们采用面向接口的编程方式,先新建一个UserDao接口,com.mybatis.dao.UserDao:

package com.mybatis.dao;import com.mybatis.domain.User;public interface UserDao {
void saveUser(User u);}

然后新建实现类com.mybatis.dao.impl.UserDaoImpl:

package com.mybatis.dao.impl;import org.mybatis.spring.SqlSessionTemplate;import com.mybatis.dao.UserDao;import com.mybatis.domain.User;public class UserDaoImpl implements UserDao{
private SqlSessionTemplate sqlSessionTemplate; public SqlSessionTemplate getSqlSessionTemplate() { return sqlSessionTemplate; } public void setSqlSessionTemplate(SqlSessionTemplate sqlSessionTemplate) { this.sqlSessionTemplate = sqlSessionTemplate; } @Override public void saveUser(User u) { sqlSessionTemplate.insert("User.saveUser", u); }}

这里我们通过spring注入了sqlSessionTemplate ,所有的数据操作都通过sqlSessionTemplate 来完成(参见spring配置文件beas.xml)。

5.创建测试用例

新建一个测试类SpringTest,内容如下:

package com.mybatis.exam1;import org.junit.Test;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;import com.mybatis.dao.UserDao;import com.mybatis.domain.User;public class SpringTest {    @Test    public void testSpring()    {        ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");        UserDao userDao = (UserDao)context.getBean("userDao");        User u = new User();        u.setPassword("aaaa");        u.setPhone("8888888");        u.setUsername("Smith");        userDao.saveUser(u);    }}

打开Outline视图,在testSpring方法上点击右键=>Debug As=>Junit Test,运行成功。

查看数据库,一条新的记录成功插入到数据库中:

这里写图片描述

博文源码:

(请参考exam2工程)

转载于:https://www.cnblogs.com/lanzhi/p/6468682.html

你可能感兴趣的文章
css技巧
查看>>
Tyvj 1728 普通平衡树
查看>>
javascript性能优化
查看>>
多路归并排序之败者树
查看>>
java连接MySql数据库
查看>>
转:Vue keep-alive实践总结
查看>>
深入python的set和dict
查看>>
C++ 11 lambda
查看>>
Android JSON数据解析
查看>>
DEV实现日期时间效果
查看>>
java注解【转】
查看>>
centos 下安装g++
查看>>
下一步工作分配
查看>>
Response. AppendHeader使用大全及文件下载.net函数使用注意点(转载)
查看>>
Wait Functions
查看>>
jQuery最佳实践
查看>>
centos64i386下apache 403没有权限访问。
查看>>
jquery用法大全
查看>>
PC-BSD 9.2 发布,基于 FreeBSD 9.2
查看>>
css斜线
查看>>