有很多关于 JPA 中延迟获取的帖子,例如 hibernate 。但是,我找不到提到延迟插入的内容。
假设我的 DAO 有一个带有公共(public) getter 和 setter 的 List 属性。而不是setMyList(List<Type> mylist)
但是我更喜欢一项一项地添加项目,从而产生像 addToMyList(Type item)
这样的界面。通常这会转化为每次调用时的 INSERT 语句,这听起来是一个巨大的开销。在插入任何内容之前总结 DAO 上所有添加内容的最简洁方法是什么?
最佳答案
您是要在同一个交易中还是在多个不同的交易中将商品添加到您的列表中?我认为不可能在许多不同的事务中延迟/延迟插入,除非您有一些缓存服务,该服务刷新到数据存储的频率较低。
如果是同一个事务,每次调用 add() 方法都不会实时触发插入;所有插入将在 session /事务结束时一起执行(除非之前由同一个表中的选择或手动 api 调用刷新触发)。
关于java - JPA 惰性插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35305251/