栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Spring整合Mybatis

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Spring整合Mybatis

整合Mybatis

mybatis-Spring官方文档
http://mybatis.org/spring/zh/sqlsession.html#SqlSessionTemplate

总结:整合MyBaits就是将我们原来MyBatis的配置文件整合到Spring的配置文件中去。
在MyBatis中,测试的时候加载配置文件,创建一个工厂模式,获取到它的sqlSession。这些都会被Spring的一些配置文件搞定。

将mybatis的对象由spring以bean的方式管理

形成了一一对应关系,方便在service层直接注入使用。

步骤:

1:导入相关的jar包:

Junit
myBatis;
mysql数据库
Spring相关的
Aop织入
myBatis-Spring【new】

2:编写配置文件;
3:测试

回忆MyBatis

1:编写实体类

@Data
public class User {

    private int id;
    private String name;
    private String pwd;
}

2: 编写MyBatis的核心配置文件







    
    
        
    

    
        
            
            
                
                
                
                
            
        
    

    
    
        
    



3:编写接口

public interface UserMapper {

    List selectUser();
}

4:编写Mapper.xml







    

5: 测试

@Test
public void selectUser() throws IOException {
    String resource = "mybatis-config.xml";
    InputStream inputStream = Resources.getResourceAsStream(resource);

    SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
    SqlSession sqlSession = sqlSessionFactory.openSession(true);//开启自动提交事务管理

    UserMapper mapper = sqlSession.getMapper(UserMapper.class);
    List userList = mapper.selectUser();
    for (User user : userList) {
        System.out.println(user);
    }


}
Spring整合MyBatis

Spring–dao.xml

1:编写数据源配置


	
    
    
    
    

2:sqlSessionFactory



    

    
    
    

3: sqlSessionTemplate



    

    
    
    


4: 需要给接口加实现类

public class UserMapperImpl implements UserMapper{

    //我们所有的操作,在原来都是用SqlSession 来执行,现在都用SqlSessionTemplate来执行
    private SqlSessionTemplate sqlSession;

    public void setSqlSession(SqlSessionTemplate sqlSession) {
        this.sqlSession = sqlSession;
    }

    @Override
    public List selectUser() {
        UserMapper mapper = sqlSession.getMapper(UserMapper.class);
        return mapper.selectUser();
    }
}

5: 将自己写的实现类,注入到Spring中
然后注册到Bean当中;


    

6: 测试使用即可;OK

官方文档还编写了另外一种实现方式:

1:实现类:继承SqlSessionDaoSupport

public class UserMapperImpl2 extends SqlSessionDaoSupport implements UserMapper{

    @Override
    public List selectUser() {

        return getSqlSession().getMapper(UserMapper.class).selectUser();
    }
}

配置文件

  
        
    

测试OK;

MyBatis则会那个和Spring原理分析
https://www.cnblogs.com/54chensongxia/p/11850709.html

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/781599.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号