网站推广广告申请,有什么平台可以推广信息,网站建设免备案免费空间,具体c2c网站建设实例redis 如何保证数据同步#xff08;数据变化时#xff09;
思路
1.新增、删除和修改都先对数据库进行操作#xff0c;这时数据库的数据将域缓存中数据不同。
2.数据库进行变动后#xff0c;返回结果#xff0c;根据返回的结果判断数据库操作是否成功。
3.如果数据库操…redis 如何保证数据同步数据变化时
思路
1.新增、删除和修改都先对数据库进行操作这时数据库的数据将域缓存中数据不同。
2.数据库进行变动后返回结果根据返回的结果判断数据库操作是否成功。
3.如果数据库操作成功取出数据库中的数据放入缓存中的指定键值对中。
4.否则返回缓存中的数据显示到页面上。
测试
删除操作 //删除数据库数据并且同步到缓存RequestMapping(DeleteData/{id})public ListArticle DeleteData(PathVariable(id) int id) {//1.需要先删除数据库中的文件int dta articleService.deleteData(id);//2.如果删除成功则取出数据库数据放进缓存中放回缓存中的新数据if (dta 0) {ListArticle articles articleService.getArticles();redisTemplate.opsForValue().set(articleData, articles);}//3.如果删除不成功则直接返回缓存中的数据return (ListArticle) redisTemplate.opsForValue().get(articleData);} 新增操作 //新增数据并同步到缓存RequestMapping(interData)public ListArticle interData() {//1.新增数据到数据库int i articleService.interData();//2.如果成功则将其放入if (i 0) {ListArticle articles articleService.getArticles();redisTemplate.opsForValue().set(articleData, articles);}//3.如果不成功就返回缓存的return (ListArticle) redisTemplate.opsForValue().get(articleData);} 修改操作
//修改数据并同步到缓存RequestMapping(updateData/{id})public ListArticle updateData(PathVariable(id)int id) {//1.新增数据到数据库int i articleService.updateData(id);//2.如果成功则将其放入if (i 0) {ListArticle articles articleService.getArticles();redisTemplate.opsForValue().set(articleData, articles);}//3.如果不成功就返回缓存的return (ListArticle) redisTemplate.opsForValue().get(articleData);}