Test3.java 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. import com.mapper.UserMapper;
  2. import com.pojo.entity.UserEntity;
  3. import org.apache.ibatis.io.Resources;
  4. import org.apache.ibatis.session.SqlSession;
  5. import org.apache.ibatis.session.SqlSessionFactory;
  6. import org.apache.ibatis.session.SqlSessionFactoryBuilder;
  7. import org.junit.After;
  8. import org.junit.Before;
  9. import org.junit.Test;
  10. import java.io.IOException;
  11. import java.io.InputStream;
  12. import java.util.ArrayList;
  13. import java.util.List;
  14. /**
  15. * 动态sql查询
  16. */
  17. public class Test3 {
  18. UserMapper userMapper;
  19. UserMapper userMapper2;
  20. SqlSession sqlSession;
  21. SqlSession sqlSession2;
  22. @Before
  23. public void before() throws IOException {
  24. InputStream resourceAsStream = Resources.getResourceAsStream("mybatisConfig.xml");
  25. SqlSessionFactory build = new SqlSessionFactoryBuilder().build(resourceAsStream);
  26. sqlSession = build.openSession(true);
  27. sqlSession2 = build.openSession(true);
  28. userMapper = sqlSession.getMapper(UserMapper.class);
  29. }
  30. @Test
  31. public void testCondition() {
  32. UserEntity userEntity = new UserEntity();
  33. // userEntity.setId(1);
  34. userEntity.setName("name");
  35. userEntity.setAge(13);
  36. userEntity.setAddress("address");
  37. List<UserEntity> userListByCondition = userMapper.findUserListByCondition(userEntity);
  38. }
  39. @Test
  40. public void testForEach() {
  41. ArrayList<Integer> integers = new ArrayList<>();
  42. // integers.add(1);
  43. // integers.add(2);
  44. List<UserEntity> userForEach = userMapper.findUserForEach(integers);
  45. }
  46. /**
  47. * 测试一级缓存
  48. */
  49. @Test
  50. public void testCache() {
  51. userMapper2 = sqlSession.getMapper(UserMapper.class);
  52. ArrayList<Integer> integers = new ArrayList<>();
  53. // integers.add(1);
  54. // integers.add(2);
  55. List<UserEntity> userForEach1 = userMapper.findUserForEach(integers);
  56. List<UserEntity> userForEach2 = userMapper2.findUserForEach(integers);
  57. }
  58. /**
  59. * 二级缓存 sqlSessionFactory级别
  60. */
  61. @Test
  62. public void testTwoCache() {
  63. ArrayList<Integer> integers = new ArrayList<>();
  64. UserMapper mapper1 = sqlSession.getMapper(UserMapper.class);
  65. UserMapper mapper2 = sqlSession2.getMapper(UserMapper.class);
  66. List<UserEntity> userForEach1 = mapper1.findUserForEach(integers);
  67. sqlSession.close();
  68. List<UserEntity> userForEach2 = mapper2.findUserForEach(integers);
  69. sqlSession2.close();
  70. }
  71. @Test
  72. public void delete() {
  73. userMapper.deleteOne(2);
  74. }
  75. @After
  76. public void after() {
  77. sqlSession.close();
  78. }
  79. }