MyBatis-Spring整合之方式1

  1. 导入相关包:Spring包:Spring架包 MyBatis包:MyBatis架包 整合包:Mybatis-Spring整合包

  2. 编写实体类User,实体类的sql映射文件,映射内容如下:

    
    
    
        
    
    
    
        
    
  3. 创建实体类的dao接口UserDao和接口的实现类UserDaoImp,在实现类里创建一个sqlSessionTemplate类变量sqlSession,设置sqlSession的set方法。在实现接口的方法中调用sqlSession的selectList方法并返回代码如下:

    public class UserDaoImp implements UserDao {
    
        private SqlSessionTemplate sqlSession;
        @Override
        public List selectUser() {
            //参数为映射文件的namespace+查询语句的id
            return sqlSession.selectList("com.lxy.entity.UserMapper.selectUsers");
        }
    
    
        public void setSqlSession(SqlSessionTemplate sqlSession) {
            this.sqlSession = sqlSession;
        }
    
    }

    Mybatis工具类要交由spring容器来处理和实例化,不再需要另外编写。此时的项目结构如图:
    MyBatis-Spring整合之方式1_第1张图片

  4. 在Spring的xml配置下编写数据库连接配置,例如:

    
    
    
        
        
            
            
            
            
        
    
        
        
            
            
        
    
        
        
            
        
    
        
            
        
  5. 编写测试主方法,如:

    public class test {
        public static void main(String[] args) throws IOException {
            ApplicationContext context=new ClassPathXmlApplicationContext("Beans.xml");
            UserDao userDao= (UserDao) context.getBean("userDao");
            System.out.println(userDao.selectUser().size());
        }
    }
  6. 配置声明式事务,为了使用事务,先修改mapper文件的映射,添加不同的操作:

    
        
        
            insert into users(name,pwd) values(#{name},#{pwd})
        
        
            deletes from users where id=#{id}
        
    

    需要修改Beans.xml的头部beans配置:

    再添加事务的和aop的配置:

    
      
      
          
      
      
      
          
              
              
              
              
              
              
              
              
          
      
    
      
          
          
          
      

你可能感兴趣的:(MyBatis-Spring整合之方式1)