Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.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_Hibernate Mapping_Hibernate Annotations - Fatal编程技术网

在Hibernate中防止延迟加载

在Hibernate中防止延迟加载,hibernate,hibernate-mapping,hibernate-annotations,Hibernate,Hibernate Mapping,Hibernate Annotations,是否可以防止仅在一个集合上延迟加载?假设我们有一个对象A,其中有两个集合(例如@OneToMany)。他们两个都很懒。我想在第二个集合上执行类似于逐出的操作,但仍然有可能获取第二个集合的数据,因此逐出整个父对象不是我的解决方案。好的,我假设设置null值不是一个很好的解决方案。它的意思是“我不想在这个系列中有任何东西”。但是,如果有人更了解只在一个代理/集合上阻塞lazy的潜在可能性,那么最好在这里提供这些信息 问候。一些丑陋的解决方案出现在我的脑海中——在那里设置一个空值。但我更愿意防止延迟抓

是否可以防止仅在一个集合上延迟加载?假设我们有一个对象A,其中有两个集合(例如@OneToMany)。他们两个都很懒。我想在第二个集合上执行类似于逐出的操作,但仍然有可能获取第二个集合的数据,因此逐出整个父对象不是我的解决方案。

好的,我假设设置null值不是一个很好的解决方案。它的意思是“我不想在这个系列中有任何东西”。但是,如果有人更了解只在一个代理/集合上阻塞lazy的潜在可能性,那么最好在这里提供这些信息


问候。

一些丑陋的解决方案出现在我的脑海中——在那里设置一个空值。但我更愿意防止延迟抓取,并设置延迟初始化异常,以防有人想要初始化它。但是我认为这样的部分逐出是不可能的,不是吗?当访问不应该初始化的惰性集合时,您希望发生什么?想要在一个集合上而不是在另一个集合上懒散地加载,这听起来很奇怪。你能分享一下这个用例吗?很难解释。这是应用程序设计的结果,现在不容易更改。由于对象在hibernate会话中使用,并且代码被许多开发人员更改,因此我希望确保他们不会获取集合,这将导致一些难以分析的错误-因此我更希望确保将引发空指针异常或其他异常。正如我所说的,很难解释所有的原因。我知道我们可以使用一些中间层或DTO,但在这种情况下是不可能的。