Hibernate 中的 lazy=”proxy” 和 lazy=”no-proxy” 的区别
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hibernate 中的 lazy=”proxy” 和 lazy=”no-proxy” 的区别相关的知识,希望对你有一定的参考价值。
精妙的例子
Child <- many-to-one ->Parent
class Child {
private Parent parent;
public Parent getParent (){
return this.parent;//访问了实例变量
}
}
class Parent {
private String name;
public String getName(){
return this.name;//访问了实例变量
}
public void f(){
System.out.println("invokeing f()");//没有访问实例变量
}
}
如果 many-to-one
的lazy设为proxy,当child.getParent().getName()或child.getParent().f()时,parent都
会被抓取,若设为no-proxy,调用child.getParent().f()时,parent是不会被抓取的,同时这种方式需要编译时字节码增
强,否则和proxy没区别。
@Copy of this post、《此帖为bing拷贝》
以上是关于Hibernate 中的 lazy=”proxy” 和 lazy=”no-proxy” 的区别的主要内容,如果未能解决你的问题,请参考以下文章
Hibernate 中的 lazy=”proxy” 和 lazy=”no-proxy” 的区别
hibernate 中的 lazy=”proxy” 和 lazy=”no-proxy” 的区别
关于延迟加载(lazy)和强制加载(Hibernate.initialize(Object proxy) )
Hibernate5-多对一双向关联-fetch="select",lazy="proxy"
Hibernate5-多对一双向关联-fetch="select",lazy="proxy",在一的一方的class标签中添加