案例:订单类和订单项类
级联查询时的问题
Lazy=true介绍 查单个时存在问题
Lazy=false介绍 查所有时存在问题 在set里把lazy=“false”也可以所报的错(com.crud.four.entity.Order.orderItems,
could not initialize proxy - no Session) <set lazy="false" name="orderItems" cascade="save-update" inverse="true">
解决方案:通过字段控制,强制加载。Hibernate.initialize()
不在order类加initOrderItems字段时,会报错
1.order类
package com.crud.four.entity;
import java.util.HashSet;
import java.util.Set;
public class Order {
private Integer orderId;
private String orderNo;
//定义一对多的关系时一定需要采用接口方式,不许使用实现类
//implements java.util.Set 代理实现的是set接口
private Set<OrderItem> orderItems=new HashSet<OrderItem>();
private Integer initOrderItem=0;//0代表懒加载 1代表立即加载
public Integer getInitOrderItem() {
return initOrderItem;
}
public void setInitOrderItem(Integer initOrderItem) {
this.initOrderItem = initOrderItem;
}
public Set<OrderItem> getOrderItems() {
return orderItems;
}
public void setOrderItems(Set<OrderItem> orderItems) {
this.orderItems = orderItems;
}
public Integer getOrderId() {
return orderId;
}
public void setOrderId(Integer orderId