我拟采用如下方案:
1、采用ORMAP技术把数据映射为对象。
2、使用Observer模式,把映射的数据对象作为被观察者,把需要根据数据修改做响应处理的对象作为观察者。
不知此方案是否可行。
主要的疑问是:当数据库中的数据发生更改时,与这些数据映射的对象能否立即同时更新?更新过程是否需要手工干预?
另外:Castor JDO与Sun JDO哪一个更优些?
如能赐教,不胜感谢!
不知此方案是否可行。
主要的疑问是:当数据库中的数据发生更改时,与这些数据映射的对象能否立即同时更新?更新过程是否需要手工干预?
另外:Castor JDO与Sun JDO哪一个更优些?
如能赐教,不胜感谢!
不知道你采用什么同步机制?
Castor JDO没有sun JDO正宗,但是我觉得好用,我用过它的XML部分。
“同步”的问题,正是我这几天头疼的问题。我初次接触JDO,本以为 JDO 可以提供同步机制,保证和数据库的原始数据的一致性,但看来希望要落空了。
我目前的“同步”方案是这样的:
1、构建一个“池”来保存需要和数据库同步的对象。
2、“池”根据条件管理这些对象,定义add(...),update(...),delete(...)方法。
3、所有这些数据对象继承或实现一个抽象类--此抽象类中定义与数据库同步的方法。
4、数据对象必须实现实现Runnable接口,在其run()方法中调用同步方法。
具体的细节尚在考虑中,banq可否给些建议。
另:有没有关于数据同步的开源项目?
这可能要自己做,建立一个线程监视数据库的这条记录就可以了,不一定要用O/R Map
嗯,真让人头疼!
http://www2.theserverside.com/resources/article.jsp?l=MonsonHaefel-Column4
同步问题和JDO确实没有太多关系。
Java虚拟机与外部数据库的双向同步需要在对象层有一个非常强大的引擎,我觉得目前的技术不足以实现这样的机制。
我最终选择了用单线程扫描的方案,性能影响不是很大。
多谢banq