一般来说,我想创建一个对象来隐藏对数据的低级访问:主要是查询和加载,但也要保存(继续阅读)。让我们称它为ObjectRepository。
在创建ObjectRepository时,会为其提供实现DataSourceInterface的多个数据源对象。所以在这个阶段,我有一个ObjectRepository来管理所有的数据源。
现在我想给ObjectRepository添加一个持久化能力。为了简单起见,我希望只有一个DataSource对象也是持久化对象(例如,它实现了额外的DataPersistanceInterface) -这样我就不必在每次保存数据时都指出它,即总是使用这个默认的对象。
什么是代码设计的最佳方法,在创建ObjectRepository的时候,我想指出一个DataSource对象也负责持久化?我是否应该对每个DataSource对象使用一些索引,并通过这个索引来指示持久化对象?还是有更好的方法?
发布于 2018-12-17 09:05:16
我真的不知道你在做什么,我有很多问题,比如如果你想查询一个sql,你如何知道哪个是正确的数据源对象?
但是如果你想设置一个默认的可写数据源,我建议你把读接口和写接口分开。也就是说,您有一个ReadOnlyDatasource对象和一个PersistDatasource对象,并将它们分别设置到ObjectRepository对象中。
当然,您只能有一个Datasource接口,但是您可以在您的ObjectRepository中有两个setter,这样您就可以设置您的persist数据源并将其用作默认设置。
https://stackoverflow.com/questions/42838621
复制相似问题