package com.yh;
import com.yh.dao.UserMapper;
import com.yh.model.User;
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 java.io.IOException;
import java.io.InputStream;
import java.util.List;
/* 1.加载主配置(resource下)
2.创建sqlSessionFactory 工厂
3.获取sqlSession对象
4.获取接口的代理对象( 看成 实现类)
5.执行方法
6.释放资源*/
public class MybatisDemo {
//查询所有表信息
@Test
public void findAllTest() throws IOException {
//加载主配置
InputStream resourceAsStream = Resources.getResourceAsStream("mybatis-config.xml");
//创建SqlSessionFactorBuilder工厂
SqlSessionFactory build = new SqlSessionFactoryBuilder().build(resourceAsStream);
// 获取sqlSession对象
SqlSession sqlSession = build.openSession();
//获取接口的代理对象
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
// 执行方法
List<User> all = mapper.findAll();
System.out.println(all);
// 释放资源
sqlSession.close();
}
@Test
public void findByIdTest() throws IOException {
//根据Id查询表信息
// 1.加载主配置(resource下)
InputStream resourceAsStream = Resources.getResourceAsStream("mybatis-config.xml");
// 2.创建sqlSessionFactory 工厂
SqlSessionFactory build = new SqlSessionFactoryBuilder().build(resourceAsStream);
// 3.获取sqlSession对象
SqlSession sqlSession = build.openSession();
// 4.获取接口的代理对象( 看成 实现类)
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
// 5.执行方法
User findById=mapper.findById(45);
System.out.println(findById);
// 6.释放资源
sqlSession.close();
}
@Test
public void deleteById() throws IOException {
// 1.加载主配置(resource下)
InputStream resourceAsStream = Resources.getResourceAsStream("mybatis-config.xml");
// 2.创建sqlSessionFactory 工厂
SqlSessionFactory build = new SqlSessionFactoryBuilder().build(resourceAsStream);
// 3.获取sqlSession对象
SqlSession sqlSession = build.openSession();
// 4.获取接口的代理对象( 看成 实现类)
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
// 5.执行方法
int i = mapper.deleteById(48);
sqlSession.commit(); //手动提交事务
System.out.println("删除条数"+i);
// 6.释放资源
sqlSession.close();
}
}