web项目中​redis缓存案例

  首先,推荐一个免费的云服务器提供商,三丰云,有了云服务器,我们使用ssh连接linux系统的云服务器。


前篇文章介绍了redis的安装,这里介绍一个微型项目,以供初学者深入理解nosql与sql,即关系型数据库与非关系型数据库各自的存在价值。

文末附上github仓库地址。


首先列出整个项目的文件结构:项目用到了,tomcat,mysql,redis。

项目的第一步:创建项目

第二步,JDBC工具类,连接数据库,编写相应的函数;

第三步,写servlet函数:

publicclassProvinceServieImplimplementsProvinceService{​// 声明dao:privateProvinceDao dao =newProvinceDaoImpl();​​@OverridepublicListfindALL(){returndao.findALL();    }​​// 使用redis缓存:@OverridepublicStringfindAllJson(){// 先从redis中查询数据:        Jedis jedis = JedisPoolUtils.getJedis();String province_json = jedis.get("province");​​//2判断 province_json 数据是否为nullif(province_json ==null|| province_json.length() ==0){//redis中没有数据System.out.println("redis中没数据,查询数据库...");//2.1从数据中查询            List<Province> ps = dao.findALL();//2.2将list序列化为jsonObjectMapper mapper =newObjectMapper();try{                province_json = mapper.writeValueAsString(ps);}catch(JsonProcessingException e) {                e.printStackTrace();            }​//2.3 将json数据存入redisjedis.set("province",province_json);//归还连接            jedis.close();​}else{System.out.println("redis中有数据,查询缓存...");        }​​returnprovince_json;​    }}​

最后,写html,实现前端功能:

publicclassProvinceServieImplimplementsProvinceService{​// 声明dao:privateProvinceDao dao =newProvinceDaoImpl();​​@OverridepublicListfindALL(){returndao.findALL();    }​​// 使用redis缓存:@OverridepublicStringfindAllJson(){// 先从redis中查询数据:        Jedis jedis = JedisPoolUtils.getJedis();String province_json = jedis.get("province");​​//2判断 province_json 数据是否为nullif(province_json ==null|| province_json.length() ==0){//redis中没有数据System.out.println("redis中没数据,查询数据库...");//2.1从数据中查询            List<Province> ps = dao.findALL();//2.2将list序列化为jsonObjectMapper mapper =newObjectMapper();try{                province_json = mapper.writeValueAsString(ps);}catch(JsonProcessingException e) {                e.printStackTrace();            }​//2.3 将json数据存入redisjedis.set("province",province_json);//归还连接            jedis.close();​}else{System.out.println("redis中有数据,查询缓存...");        }​​returnprovince_json;​    }}

喜欢的可以git star 一个呀。https://github.com/Jesselinux/Java_Web

完结。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容