Spring Boot 2.x基础教程:EhCache缓存的使用( 二 )

@Autowiredprivate CacheManager cacheManager;@Testpublic void test() throws Exception {    System.out.println("CacheManager type : " + cacheManager.getClass());    userRepository.save(new User("AAA", 10));    User u1 = userRepository.findByName("AAA");    System.out.println("第一次查询:" + u1.getAge());    User u2 = userRepository.findByName("AAA");    System.out.println("第二次查询:" + u2.getAge());}执行测试输出可以得到:
CacheManager type : class org.springframework.cache.ehcache.EhCacheCacheManagerHibernate: select next_val as id_val from hibernate_sequence for updateHibernate: update hibernate_sequence set next_val= ? where next_val=?Hibernate: insert into user (age, name, id) values (?, ?, ?)2020-07-14 18:09:28.465  INFO 58538 --- [           main] o.h.h.i.QueryTranslatorFactoryInitiator  : HHH000397: Using ASTQueryTranslatorFactoryHibernate: select user0_.id as id1_0_, user0_.age as age2_0_, user0_.name as name3_0_ from user user0_ where user0_.name=?第一次查询:10第二次查询:10可以看到:

  1. 第一行输出的CacheManager type为org.springframework.cache.ehcache.EhCacheCacheManager,而不是上一篇中的ConcurrentHashMap了 。
  2. 第二次查询的时候,没有输出SQL语句,所以是走的缓存获取
整合成功!
代码示例本文的相关例子可以查看下面仓库中的chapter5-2目录:
  • Github:https://github.com/dyc87112/SpringBoot-Learning/
  • Gitee:https://gitee.com/didispace/SpringBoot-Learning/




推荐阅读