我理解使用不同策略检索数据的核心概念。但我找不到一个好的总结/定义..
答案 0 :(得分:0)
我不确定提取策略本身就是一种设计模式,但确实是一类模式的一部分。两个例子是Lazy Loading和预取。另一个相关概念是缓存。
它们不以任何方式对 ORM 或 Hibernate 具体,但在那里经常被提及,因为您需要将工具配置为以特定方式执行,而不是直接编码。
总的来说,您的提取策略控制着如何将数据检索到应用程序中,并且可能(或可能不会)影响在应用程序中为OO语言实例化对象的方式。
例如,如果您通常遍历整个数据集(或一组对象),那么一次加载整个集合或者有效预取数据以便它可以处理它可能更有效率
另一方面,如果您经常只访问数据的第一部分;或者可能是对象的包络而不是其内容,您可以选择仅实例化对象层次结构的顶级部分而不是其所有内容。