Mybatis_day06:Mybatis整合Spring的步骤是什么

本篇内容介绍了“Mybatis_day06:Mybatis整合Spring的步骤是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

创新互联建站网站建设提供从项目策划、软件开发,软件安全维护、网站优化(SEO)、网站分析、效果评估等整套的建站服务,主营业务为成都网站设计、成都网站建设,重庆App定制开发以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。创新互联建站深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

MyBatis-Spring 会帮助你将 MyBatis 代码无缝地整合到 Spring 中。它将允许 MyBatis 参与到 Spring  的事务管理之中,创建映射器 mapper 和 SqlSession 并注入到 bean 中,以及将 Mybatis 的异常转换为 Spring 的  DataAccessException。最终,可以做到应用代码不依赖于 MyBatis,Spring 或 MyBatis-Spring。

 Mybatis整合spring

  1. 整合思路

  2. SqlSessionFactory对象应该放到spring容器中作为单例存在。

  3. 传统dao的开发方式中,应该从spring容器中获得sqlsession对象。

  4. Mapper代理形式中,应该从spring容器中直接获得mapper的代理对象。

  5. 数据库的连接以及数据库连接池事务管理都交给spring容器来完成。

整合需要的jar包

  • spring的jar包

  • Mybatis的jar包

  • Spring+mybatis的整合包。

  • MySQL的数据库驱动jar包。

  • 数据库连接池的jar包。

整合的步骤

第一步:创建一个java工程。

第二步:导入jar包。(上面提到的jar包)

第三步:mybatis的配置文件sqlmapConfig.xml

第四步:编写Spring的配置文件

1、数据库连接及连接池

2、事务管理(暂时可以不配置)

3、sqlsessionFactory对象,配置到spring容器中

4、mapeer代理对象或者是dao实现类配置到spring容器中。

第五步:编写dao或者mapper文件

第六步:测试。

SqlMapConfig.xml                      applicationContext.xml                                            

db.properties

jdbc.driver=com.mysql.jdbc.Driver  jdbc.url=jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf-8  jdbc.username=root  jdbc.password=root

Dao的开发

三种dao的实现方式:

1、传统dao的开发方式

2、使用mapper代理形式开发方式

3、使用扫描包配置mapper代理。

传统dao的开发方式

接口+实现类来完成。需要dao实现类需要继承SqlsessionDaoSupport类

Dao实现类

public class UserDaoImpl extends SqlSessionDaoSupport implements UserDao {  @Override  public User findUserById(int id) throws Exception {  SqlSession session = getSqlSession();  User user = session.selectOne("test.findUserById", id);  //不能关闭SqlSession,让spring容器来完成  //session.close();  return user;  }  @Override  public void insertUser(User user) throws Exception {  SqlSession session = getSqlSession();  session.insert("test.insertUser", user);  session.commit();  //session.close();  }  }

配置dao

把dao实现类配置到spring容器中

        测试方法  初始化:  private ApplicationContext applicationContext;  @Before  public void setUp() throws Exception{  String configLocation = "classpath:spring/ApplicationContext.xml";  //初始化spring运行环境  applicationContext = new ClassPathXmlApplicationContext(configLocation);  }  测试:  @Test  public void testFindUserById() throws Exception {  UserDao userDao = (UserDao) applicationContext.getBean("userDao");  User user = userDao.findUserById(1);  System.out.println(user);  }

1.Mapper代理形式开发dao

 a.开发mapper接口

开发mapper文件

Mybatis_day06:Mybatis整合Spring的步骤是什么

配置mapper代理

    **      测试方法  public class UserMapperTest {  private ApplicationContext applicationContext;  @Before  public void setUp() throws Exception {  applicationContext = new  ClassPathXmlApplicationContext("classpath:spring/applicationContext.xml");**  }  @Test  public void testGetUserById() {  UserMapper userMapper = applicationContext.getBean(UserMapper.class);  User user = userMapper.getUserById(1);  System.out.println(user);  }  }

扫描包形式配置mapper

    

每个mapper代理对象的id就是类名,首字母小写

Mybatis_day06:Mybatis整合Spring的步骤是什么

“Mybatis_day06:Mybatis整合Spring的步骤是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!


当前名称:Mybatis_day06:Mybatis整合Spring的步骤是什么
新闻来源:http://ybzwz.com/article/ijjdoi.html