package com.abc.mapper;
import com.abc.entity.Teacher;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
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.After;
import org.junit.Before;
import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
import java.io.InputStream;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;
public class TeacherMapperCase {
private Logger logger = LoggerFactory.getLogger(TeacherMapperCase.class);
private SqlSession sqlSession;
@Before
public void before() throws IOException {
String resource = "mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
sqlSession = sqlSessionFactory.openSession();
}
@After
public void after() {
sqlSession.close();
}
@Test
public void insert() {
Teacher teacher = new Teacher();
teacher.setCreateTime(LocalDateTime.now());
teacher.setName("孔子");
teacher.setAge(30);
teacher.setHomeAddress("鲁国");
sqlSession.insert("com.abc.mapper.TeacherMapper.insert", teacher);
sqlSession.commit();
logger.info("id={}", teacher.getId());
}
@Test
public void update() {
Teacher teacher = new Teacher();
teacher.setId(1865L);
teacher.setName("孔子2");
TeacherMapper mapper = sqlSession.getMapper(TeacherMapper.class);
mapper.update(teacher);
sqlSession.commit();
}
@Test
public void selectById() {
TeacherMapper mapper = sqlSession.getMapper(TeacherMapper.class);
Teacher teacher = mapper.selectById(1865L);
logger.info(teacher.toString());
}
@Test
public void select() {
TeacherMapper mapper = sqlSession.getMapper(TeacherMapper.class);
List<Teacher> teachers = mapper.select("%孔%", "%鲁%");
logger.info(teachers.toString());
}
@Test
public void selectForPage() {
TeacherMapper mapper = sqlSession.getMapper(TeacherMapper.class);
PageHelper.startPage(10, 3);
List<Teacher> teachers = mapper.select("%孔%", "%鲁%");
PageInfo<Map<String, String>> pageInfo = new PageInfo(teachers);
logger.info(pageInfo.toString());
}
@Test
public void select2() {
TeacherMapper mapper = sqlSession.getMapper(TeacherMapper.class);
List<Map<String, Object>> list = mapper.select2("%孔%", "%鲁%");
logger.info(list.toString());
}
@Test
public void delete() {
TeacherMapper mapper = sqlSession.getMapper(TeacherMapper.