redis 非关系型数据库.可用来部署集群,解决高并发问题.这里用servlet.简单学习做个demo解决下数据库的复用性.
public class ServiceImp implements SelService {
private Sel s=new SelImp(); //创建db层的实现类,调用db层的实现方法
@Override
public List<SelBean> findSel() {
Sel sel=new SelImp();//这里是测试使用的,可以不调
return sel.findSel();
}
@Override
public String getJson() {
//获得Jedis
JedisPool jedisPool= JedisUtil.getJedisPool();
Jedis jedis=jedisPool.getResource();
String sels=jedis.get("sels");
if (sels==null||sels.length()<=0){
System.out.println("说明里面没有,那么我们就需要将数据存放到redis里面");
//说明并没有存储这个数据,那么就从数据库查出来存到里面
List<SelBean> list=s.findSel();
//创建ObjectMapper对象
ObjectMapper objectMapper=new ObjectMapper();
try {
调用方法将字符串转化为json结构
sels=objectMapper.writeValueAsString(list);
} catch (JsonProcessingException e) {
e.printStackTrace();
}
//查出来之后存到jedis里面
jedis.set("sels",sels);
//关闭连接
jedis.close();
}else{
System.out.println("说明数据库里面有数据");//测试语句
}
return sels;
}
}
//通过redis可以看出,如果使用联动,那么将大大减轻对数据库的操作,减少耦合,使效率变得更高