这个是运行的代码
@Autowired
private RedisTemplate<String,Object> redisTemplate;
@Override
public List<TbContent> findByCategoryId(Long categoryId) {
//首先从redis中取数据
List<TbContent> list = (List<TbContent>)redisTemplate.boundHashOps("guanggao").get(categoryId);
//1.取到了直接返回,不走数据库
if(list != null && list.size() > 0){
System.out.println("直接走reids,不去查询数据库了:" + list);
return list;
}
//2.取不到,走数据库
TbContentExample example=new TbContentExample();
example.setOrderByClause("sort_order desc");//通过降序排列
Criteria criteria = example.createCriteria();
criteria.andCategoryIdEqualTo(categoryId);//根据分类id查询
//只查询state是1的表示启用的广告
criteria.andStatusEqualTo("1");//开启的广告
list = contentMapper.selectByExample(example);
//查询了数据库后,将数据放入到redis,下次就不走数据库了
redisTemplate.boundHashOps("guanggao").put(categoryId, list);
System.out.println("走数据库,并且存入到reids中:" + list);
return list;
}
这个是日志的结果
Creating a new SqlSession
SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@591987d4] was not registered for synchronization because synchronization is not active
直接走reids,不去查询数据库了:[com.jd.pojo.TbContent@3f0fdfb8, com.jd.pojo.TbContent@7a0d463d, com.jd.pojo.TbContent@72d4fc40]
Creating a new SqlSession
SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@4ca4e929] was not registered for synchronization because synchronization is not active
JDBC Connection [com.mysql.jdbc.JDBC4Connection@489b7465] will not be managed by Spring
JDBC Connection [com.mysql.jdbc.JDBC4Connection@397574e] will not be managed by Spring
==> Preparing: select id, category_id, title, url, pic, status, sort_order from tb_content WHERE ( category_id = ? and status = ? ) order by sort_order desc
==> Preparing: select id, category_id, title, url, pic, status, sort_order from tb_content WHERE ( category_id = ? and status = ? ) order by sort_order desc
==> Parameters: 6(Long), 1(String)
==> Parameters: 6(Long), 1(String)
<== Total: 0
<== Total: 0
Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@591987d4]
Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@4ca4e929]
走数据库,并且存入到reids中:[]
走数据库,并且存入到reids中:[]
希望大佬能帮忙看看问题在哪里?