Hibernate全局“动态插入”

时间:2012-02-08 11:16:21

标签: hibernate

是否可以使用Hibernate全局设置dynamic-insert属性(因此它将是所有实体的默认属性)?

2 个答案:

答案 0 :(得分:3)

在NHibernate中它是

foreach (var clazz in config.ClassMappings)
{
    clazz.DynamicInsert = true;
}

我不知道hibernate中的确切语法。

for (PersistentClass clazz : configuration.ClassMappings)
{
    clazz.setDynamicInsert(true);
}

答案 1 :(得分:1)

对于Java Hibernate,正确的答案是:

Iterator mappingClasses = config.getClassMappings();
while(mappingClasses.hasNext()) {
   PersistentClass clazz = (PersistentClass) mappingClasses.next();
   clazz.setDynamicInsert(true);
   clazz.setDynamicUpdate(true);
}

请记住,在尝试迭代映射之前,必须构建映射。否则config.getClassMappings()将返回空迭代器。

config.buildMappings();