Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hibernate “冬眠全球”;“动态插入”;_Hibernate - Fatal编程技术网

Hibernate “冬眠全球”;“动态插入”;

Hibernate “冬眠全球”;“动态插入”;,hibernate,Hibernate,有没有办法用Hibernate全局设置动态插入属性(因此它将是所有实体的默认设置)?在NHibernate中是这样的 foreach (var clazz in config.ClassMappings) { clazz.DynamicInsert = true; } 我不知道hibernate中的确切语法 for (PersistentClass clazz : configuration.ClassMappings) { clazz.setDynamicInsert(tru

有没有办法用Hibernate全局设置
动态插入
属性(因此它将是所有实体的默认设置)?

在NHibernate中是这样的

foreach (var clazz in config.ClassMappings)
{
    clazz.DynamicInsert = true;
}
我不知道hibernate中的确切语法

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

对于Java Hibernate,正确答案是:

Iterator mappingClasses = config.getClassMappings();
while(mappingClasses.hasNext()) {
   PersistentClass clazz = (PersistentClass) mappingClasses.next();
   clazz.setDynamicInsert(true);
   clazz.setDynamicUpdate(true);
}
请记住,在尝试迭代映射之前,必须先构建映射。否则,
config.getClassMappings()
将返回空迭代器

config.buildMappings();

Hmm在
ClassMetaData
中没有看到任何提示此方法的内容,但是有一个
PersistentClass.setDynamicInsert(boolean)
方法。我得看看这对我是否有帮助