测试结果如下:
然后是复杂类型java.util.List测试:
@Test public void redisPutListTest() { List<String> stringList = new ArrayList<>(); stringList.add("github"); stringList.add("13"); stringList.add("cnblog"); stringList.add("perfect-ssm"); //添加 redisUtil.put("stringList", stringList); } @Test public void redisGetListTest() { //获取 List<String> stringList = (List<String>) redisUtil.get("stringList", List.class); if (stringList.size() > 0) { for (String string : stringList ) { System.out.println(string); } } }测试结果如下:
最后是项目中自定义的JavaBean的测试:
要缓存的JavaBean必须实现Serializable接口,因为Spring会将对象先序列化再存入 Redis,如测试用例中的com.ssm.promotion.core.entity.Article类,如果不实现 Serializable的话将会报出如下异常:
org.springframework.data.redis.serializer.SerializationException: Cannot serialize; nested exception is org.springframework.core.serializer.support.SerializationFailedException: Failed to serialize object using DefaultSerializer; nested exception is java.io.NotSerializableException: com.ssm.promotion.core.entity.Article @Test public void redisPutListArticleTest() { List<Article> articles = new ArrayList<>(); Article article1 = new Article(); article1.setId("1"); article1.setArticleContent("article1"); Article article2 = new Article(); article2.setId("2"); article2.setArticleContent("article2"); articles.add(article1); articles.add(article2); //添加 redisUtil.put("articles", articles); } @Test public void redisGetArticleListTest() { //获取 List<Article> articles = (List<Article>) redisUtil.get("articles", List.class); if (articles.size() > 0) { for (Article article : articles ) { System.out.println(article); } } }测试结果如下:
配置文件中的密码、端口、ip地址要改成你自己的配置,不要直接用这里的配置,如果是这个原因导致项目报错就很尴尬了。
每周抽出一些时间做点事情,虽然感觉很压抑,但是看到结果的时候心里真的是乐开了花。
首发于我的个人博客,新的项目演示地址:perfect-ssm,登录账号:admin,密码:123456
如果有问题或者有一些好的创意,欢迎给我留言,也感谢向我指出项目中存在问题的朋友。
如果你想继续了解该项目可以查看整个系列文章Spring+SpringMVC+MyBatis+easyUI整合系列文章,也可以到我的GitHub仓库或者开源中国代码仓库中查看源码及项目文档。