MySQL数据库某些字段发生变化时,将信息发送到rabbitMq。
GoodsChange goodsChangeBefore =new GoodsChange();
GoodsChange goodsChangeAfter =new GoodsChange();
Goods goodsBefore;
Goods goodsAfter;
...
else if (operator != null && tableName != null && Arrays.asList(tableList).contains(tableName)
&& "u".contains(operator)) {
goodsBefore = JSONObject.parseObject(jsonObj2Map(before), Goods.class);
goodsAfter = JSONObject.parseObject(jsonObj2Map(after), Goods.class); BeanUtils.copyProperties(goodsBefore,goodsChangeBefore);
BeanUtils.copyProperties(goodsAfter, goodsChangeAfter);
//判断关注的字段值是否有变化,有变化时向MQ发送消息
if((ObjectToJson.ObjectToJson(goodsChangeBefore)).equals(ObjectToJson.ObjectToJson(goodsChangeAfter))){
goodsProducer.send(goodsAfter);
log.info(tableName+"表发生更新"+goodsAfter);
} else{
log.info("非关注字段发生变化,不需要发送消息");
}
}
...