Mybatis快速入门之spring整合mybatis

db.properties整合思路

  1. SqlSessionFactory对象应该放到spring容器中作为单例存在。
  2. 传统dao的开发方式中,应该从spring容器中获得sqlsession对象。
  3. Mapper代理形式中,应该从spring容器中直接获得mapper的代理对象。
  4. 数据库的连接以及数据库连接池事务管理都交给spring容器来完成。

引入jar包

  1. mybatis核心包
  2. spring核心包
  3. dbcp连接池
  4. 数据库驱动包
  5. mybatis-spring-1.2.2.jar

工程目录如下:

Mybatis快速入门之spring整合mybatis_第1张图片

Mybatis快速入门之spring整合mybatis_第2张图片

整合步骤

第一步:导入包

加入上面所提及包

第二步:加入配置文件

  1. mybatisSpring的配置文件
  2. spring的配置文件sqlmapConfig.xml
    1. 数据库连接及连接池
    2. 事务管理(暂时可以不配置)
    3. sqlsessionFactory对象,配置到spring容器中
    4. mapeer代理对象或者是dao实现类配置到spring容器中。

sqlmapConfig.xml(mybatis配置文件)





    
        
    
   

applicationContext.xml(spring配置文件)




   
   

	
	
		
		
		
		
		
		
	

	
	
		
		
		
		
		
		
		
	
	
	
	
	
         	
	
	
	

 

db.properties(数据库配置文件)

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

log4j.properties(日志文件)

# Global logging configuration
log4j.rootLogger=DEBUG, stdout
# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n

测试代码以及结果

package com.lingnang.Jutil;

import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import com.lingnang.dao.UserMapper;
import com.lingnang.pojo.User;
import com.lingnang.query.QueryVo;

public class TestMybatis {
  /*测试mybatis spring整合*/
  
  @Test
  public void TestQueryUsersByIdsList() throws IOException {
       ApplicationContext applicationContext = new ClassPathXmlApplicationContext("classpath:applicationContext.xml");
      UserMapper userMapper = applicationContext.getBean(UserMapper.class);
      
      QueryVo vo=new QueryVo();
      List list =new ArrayList<>();
      list.add("u01");
      list.add("u02");
      list.add("u03");
      vo.setIdsList(list);
      List  usersList =userMapper.queryUsersByIdsList(vo);
      for (User user2 : usersList) {  
    	  System.out.println(user2.getUname()+" "+user2.getTel());
	}
      
  }
  
  
}

mapper

Mybatis快速入门之spring整合mybatis_第3张图片

 

Mybatis快速入门之spring整合mybatis_第4张图片

你可能感兴趣的:(Mybatis)