如何跟踪ormlite进行数据库更改?

时间:2015-07-20 10:08:15

标签: java design-patterns ormlite architectural-patterns

我正在使用com.j256.ormlite包。

我的目标是拥有一个工作的数据库文件和用户可以使用UI按钮保存的文件。为了实现这一目标,我打算在数据库抽象层跟踪工作文件中的更改,并在关闭程序时通知用户存在未保存的数据。

如何跟踪是否进行了更改?

我的第一个直觉是为Dao界面编写装饰器并将Dao Creation包装在一个使用我的装饰器的方法中。

装饰者可以修改所有更新&删除方法。但dao似乎支持交易,似乎是一个复杂而漫长的界面。

您最好如何解决我的问题?

1 个答案:

答案 0 :(得分:0)

  

我的第一个直觉是为Dao界面编写装饰器并将Dao Creation包装在一个使用我的装饰器的方法中。

只要通过DAO完成对数据库的所有访问,这肯定是有意义的。我不明白为什么交易会使问题变得复杂,只要使用dao.callBatchTasks(...)来调用装饰器。

在幕后,ORMLite使用3个代表SQL数据库的接口。

您可以为这些较低级别的类编写代理。