配置文件
spring:redis:host: localhostport: 6379password: 123123database: 8lettuce:pool:maxActive: 8maxIdle: 100minIdle: 10maxWait: -1---canal:server: 192.168.2.130:11111destination: redis #可设置*个,逗号隔开 , 对应需要创建*文件夹,且文件夹下有instance.properties文件数据模型
public class Users {private Integer id ;private String name ;private Integer age ;@Overridepublic String toString() {return "Users [id=" + id + ", name=" + name + ", age=" + age + "]";}}具体服务组件
@Component@CanalTable(value = https://www.isolves.com/it/cxkf/jiagou/2023-09-26/"users")public class UserServiceImpl implements EntryHandler {private static final Logger logger = LoggerFactory.getLogger(UserServiceImpl.class);private final StringRedisTemplate stringRedisTemplate ;public UserServiceImpl(StringRedisTemplate stringRedisTemplate) {this.stringRedisTemplate = stringRedisTemplate ;}@Overridepublic void insert(Users user) {logger.info("新增数据为{}", user);try {this.stringRedisTemplate.opsForValue().set("users:" + user.getId(), new ObjectMApper().writeValueAsString(user)) ;} catch (JsonProcessingException e) {e.printStackTrace();}}@Overridepublic void update(Users before, Users after) {logger.info("原来数据为{}", before);logger.info("更新数据为{}", after);try {this.stringRedisTemplate.opsForValue().set("users:" + after.getId(), new ObjectMapper().writeValueAsString(after)) ;} catch (JsonProcessingException e) {e.printStackTrace();}}@Overridepublic void delete(Users user) {logger.info("删除的数据为{}", user);this.stringRedisTemplate.delete("users:" + user.getId()) ;}}以上通过增,删 , 改数据就能同步到Redis中了 。
【在SpringBoot中通过Canal实现MySQL与Redis的数据同步】
推荐阅读
-
-
龙百万|JKL的赛纳能一战成名,RNG也有1/3的功劳,角度刁钻!
-
-
澎湃新闻|美一男子驾车冲撞抗议者,2女子被撞飞生命垂危
-
怎么获QQ点赞最快,qq怎么在点赞加好友未满18岁
-
张国荣|没法重拍瞬间:裸泳的邓丽君林青霞,帮狄龙梳头的张国荣
-
珠峰|珠穆朗玛峰“睡美人”,冰封9年成路标,数百人路过无人敢救她
-
【李俊慧】3月手机盘点:华为、小米、OPPO和vivo等8品牌15款新品齐发,咋选
-
『20岁女兵征服40吨远火车』20岁女兵征服40吨远火车
-
「小仙女带你侃娱乐」怪兽嘴里的玩具手枪过分了,连小孩都看不下去的“穿帮镜头”:卫生巾不算啥
-
中国|蔡元培的思想自由、学术至上等理念使其成为北大永远的校长
-
-
奇石▲这是一块普通石头,专家却说是艺术品,难道专家看走了眼?
-
-
-
贝莉雅|你会越来越快乐,怎样才能让自己过得快乐一些?做好这五点
-
-
-
光明网■【火焰蓝一周年】组图丨绮丽云南的森林“应急先锋”
-
星座连连看吧|论本事你玩不过她,男人最不该小瞧的星座女