【问题标题】:How can I disable change tracking to prevent spring data from doing dirty checks and tracking changes for read only queries如何禁用更改跟踪以防止 spring 数据进行脏检查和跟踪只读查询的更改
【发布时间】:2017-08-11 08:12:53
【问题描述】:

在加载具有大量记录(例如 100000 条记录)的实体时,Spring Data 中是否有任何方法可以禁用跟踪更改(例如 EntityFramework)?我知道我们可以在 DB 上编写一个视图并将一个实体指向它。但它看起来过于复杂,因为在 EntityFramework 中您可以使用AsNoTracking()

【问题讨论】:

    标签: java hibernate spring-data spring-data-jpa


    【解决方案1】:

    看看 Hibernate 的StatelessSession。来自文档:

    无状态会话不实现一级缓存,也不实现 与任何二级缓存交互,也不实现 事务性后写或自动脏检查,也不做 操作级联到关联的实例。集合被忽略 无状态会话。通过无状态会话执行的操作 绕过 Hibernate 的事件模型和拦截器。无状态会话 容易受到数据混叠效应的影响,因为缺乏 一级缓存。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-28
      • 1970-01-01
      • 2021-09-28
      • 1970-01-01
      相关资源
      最近更新 更多