hibernate - Grails 域类中的延迟列加载

标签 hibernate grails grails-orm

我有一个这样的域类:

class Document {
 String mime;
 String name;
 byte[] content;

 static mapping = {
  content lazy:true;
 }
}

我想对“内容”列启用延迟加载,因为应用程序不需要访问该列就可以执行某些操作。

但是 lazy:true 选项不起作用...有任何想法或解决方法吗?

最佳答案

有一些讨论here关于使用 Hibernate 注释延迟加载特定列。

另一种可能性是将您的 Document 对象分成两部分。像这样:

class Document {
    String mime
    String name
    DocumentContent content
}

class DocumentContent {
    static belongsTo = [document:Document]
    byte[] data
}

因为这是一个关系,默认情况下 GORM 将延迟加载 DocumentContent。

关于hibernate - Grails 域类中的延迟列加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5492833/

相关文章:

hibernate - 仅在某些领域类或具有多个数据库的 Grails 项目上使用 GORM 的 Grails

java - Grails/GORM 2.3 Hibernate 寻找抽象域类持久化表

hibernate - Spring表单验证验证数据库插入?

java - Hibernate HQL 查询导致 SQLGrammarException

java - Hibernate OneToMany 与连接表

java - Autowired @Service 并非在任何地方都为 null

grails - Micronaut 读取超时异常

hibernate - Javassist 增强在部署时失败

apache - Tomcat/Apache/Grails 配置

grails-orm - 在 Grails (GORM) 中,如何覆盖约束名称