我有两个表:订单[orderid(PK),OrderShipmentCode,...]
和装运[shipmentid(PK),ShipmentCode,...]
。
在Order
类中,我声明了Shipport
字段,如下所示:
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "OrderShipmentCode", referencedColumnName = "ShipmentCode", insertable = false, updatable = false, nullable = false)
private Shipment shipment;
当我获得order
列表时,shipport
也被加载(我看到了许多单独的SELECT查询)。但我希望装运
是惰性加载的,而不是与订单
一起提取的。
对于其他表,如果引用的列是主键,则结果与预期一样(使用懒惰加载)。在我的示例中,shipmentcode
不是shipment
表的主键,并且Hibernate不使用惰性加载。
你能告诉我怎样实现那个目标吗?
Criteria criteria = HibernateUtil.getSessionFactory().getCurrentSession().createCriteria(Order.class);
List result = criteria.list();
Thd问题是由HHH-13024问题引起的。
根据OSS的真正精神,您可能希望调查问题并发送带有修复建议的拉请求。这是解决问题的最快方法。
这是我的模型: 以下是表格: 这些实体是: 我得库: org.hibernate:hibernate-core:jar:4.2.17.final:compile org.hibernate.common:hibernate-commons-annotations:jar:4.0.2.final:compile org.hibernate.javax.persistence:hibernate-jp
我正在使用JPA2.1(Eclipselink2.5.1)和JBoss7.1。 为什么不工作是懒惰加载? 谢谢
我正在尝试< code>fetchType的示例。懒惰,但是在调试代码时,似乎< code>fetchType。懒惰不起作用。 实体bean:地址 添加了属性为fetch=fetchType的注释@Basic。懒散地在地区赛场上。 我的实体bean由以下代码定义: 使用上述实体 Bean 的方法: 因此,在方法调用之后,当我检查地址对象时,它已经填充了区域字段。 请让我知道我是否缺少某些配置,或者
如果您在一个表上的非空列上使用计数,而没有任何where部分,则优化器只需返回该表中的行数。 如果您要求对一个唯一的非空列(如主键)进行非重复计数,答案应该是相同的,但是这次mariadb代替了。 如果您在其他表上留下了联接,但仍然没有 where 部分,则结果仍应为该表中的行数。 Mariadb 不使用千次优化是有原因的吗?是否存在未过滤主键的 DISTINCT 计数可以给出任何其他结果,然后该
问题内容: 我在spring使用Hibernate。 我有这样的模型班。 它通常可以正常工作,但是Category不会延迟加载,而是在ForumEntry加载后急切加载。 `` 完全没有将getter称为ForumCategory是在ForumTopic之后立即加载的。 这个问题出现在我所有的@ManyToOne关联中。但是,@OneToMany关联会延迟加载。 我正在使用maven2进行构建。这
OrderDetailSPK 阿奎利安试验