用java实现对两数据库的数据同步更新,怎么来做

用java实现对两数据库的数据同步更新,怎么来做,第1张

首先得弄清楚 你的插入是对同一数据库 还是不同数据库的 *** 作数据量大的时候 是否要求即时性 是否牵扯到事物

本人推荐 做一个跑批程序 进行同步数据 这样能提高代码性能 以及程序性能 当然 你所说的瓶颈 无非就是大数据量对数据库的 *** 作次数 以及海量数据造成程序效率的一个瓶颈

一般数据库的实时同步都是通过服务器自身的特点或者集群件来实现的。

mysql可以做集群也可以做主从。主从就可以实时同步了。

实现方法有点长,搜索一些关键字 mysql 主从

http://yanwenhan.javaeye.com/blog/163987

看看这个文章可以设置主从 参考一下。

楼主用hibernate 所以说就不需要在手动管理connection的AutoCommit属性了。不用触发器的话,也好办,不过可能麻烦一点。

假设你已经做好了表list1和list2 到对象list1和list2的映射。list1和list2配置成一对一映射,list2的主键也是list1的外键,生成机制由list1负责。级联关系cascade属性设置为all,也就是对list1 *** 作的时候hibernate会级联的 *** 作它的附着物list2

那么在 *** 作对象list1基础DAO中的曾删改查方法中,同时 *** 作list2对象即可。

以增加 *** 作为例:

比如 new出来一个list1对象,然后充填属性:

list1.setName("张三")

list1.setPwd("123456")

list1.getList2.setName(list1.getName())

list1.getList2.setpwd(list1.getPwd())

session.save(list1)//这里当持久化list1的时候,会级联把list2也持久了

提交transaction

关键问题还是配置,比较麻烦 容易出错。我对hibernate不是多了解,想的这个办法可能比较笨,应该还有好的办法来解决。等等高手来看看吧。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10840534.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存