在Hibernate
Envers中,实体的所有相关集合都是延迟加载的,而不管设置了什么获取类型。因此,当审计查询具有其他实体集合的实体(当然都是经过审计的)时,该集合SetProxy
首先是一个(在调试时可以看到)。
那么,如何初始化该代理?使用Hibernate.initialize()
没有效果(我怀疑是因为Hibernate和Envers使用了不同的代理对象)。我知道我可以通过迭代项目来初始化集合,但是这对我来说不是一个选择,因为我在一个实体中有多个集合,更不用说维护问题了。
我需要热切地初始化它们,因为我将在Hibernate会话已经关闭(将域对象转换为dtos)的稍后时间访问集合。
我正在使用Hibernate 3.5.6。
显然,这是Hibernate
Envers的未解决问题。他们的JIRA中已经存在一个问题:https
:
//hibernate.atlassian.net/browse/HHH-3552。随便投票吧,当他们看到有些人希望对此进行修复时,也许它可以加快速度;)
在Envers团队解决此问题之前,需要进行以下工作:size()
对集合进行调用会初始化代理对象。
是的,我见过类似的问题,但没有一个答案能真正引导我找到解决方案。我没有在任何地方使用这个线程,同样的代码在另一个jhipster应用程序中也可以使用,所以我不明白为什么这个提升转换会导致Hibernate问题。 例外: JPA地产: 编辑-这解决了我的问题:
Initialization 初始化 Although it doesn’t look superficially very different from initialization in C or C++, initialization in Go is more powerful. Complex structures can be built during initialization a
初始化是为类、结构体或者枚举准备实例的过程。这个过需要给实例里的每一个存储属性设置一个初始值并且在新实例可以使用之前执行任何其他所必须的配置或初始化。 你通过定义初始化器来实现这个初始化过程,它更像是一个用来创建特定类型新实例的特殊的方法。不同于 Objective-C 的初始化器,Swift 初始化器不返回值。这些初始化器主要的角色就是确保在第一次使用之前某类型的新实例能够正确初始化。 类类型的
new iSlider(DOM, DATA, OPTIONS) Name Type Description DOM dom 容器dom节点 DATA Array 数据列表 OPTIONS Object 配置项 DOM new iSlider(DOM, DATA, OPTIONS); {HTMLElement} 容器dom节点 作为第一个参数并不是必须的,会被OPTIONS.dom覆盖,但是这十分必
确认初始化操作 1)初始化操作用来清空此统计ID的统计数据 2)与启用新的统计ID不同的是,初始化操作使您不需更换网站上的统计代码就可以重新开始统计 注意:初始化操作将清除此统计ID的所有统计数据,此操作不可恢复!!!
创建版本库 git 基于文件夹(工作树)进行版本控制,在一个文件夹中创建 git版本库: $ cd project/ $ git init Initialized empty Git repository in .git/ 输出信息:在当前文件夹的 .git/ 目录下创建版本库 将文件提交到 git索引: git add file1 file2 file3 …… 更方便的作法是