请教hibernate的lzay问题!关于懒加载的子类。谢谢。
比如,有一个用户类UserBean,SuperUserBean1、SuperUserBean2继承自UserBean.然后有一个货品类GoodsBean包含一个UserBean,而且是懒加载的.如下:
UserBean {
String id;
String name;
}
SuperUserBean1 extends UserBean {
String xxx1;
}
SuperUserBean2 extends UserBean {
String xxx2;
}
GoodsBean {
String id;
UserBean ub;
}
现在取出一个id=01的GoodsBean的时候,其实际对应的不是一个UserBean用户,而是SuperUserBean1或者 SuperUserBean2,但是默认取出来的相应用户是一个UserBean,这个时候就得不到xxx1或者xxx2属性,不知道要怎么搞?
就算我知道返回的应该是一个SuperUserBean1,也不能调用((SuperUserBean1)goodsbean.getUb()).getXxx1();会跑出异常ClassCastException。
如果是lazy="false"的话,就会自动取出当前GoodsBean的对应的SuperUserBean1或者SuperUserBean2。
哪位知道要怎么解决阿,谢谢了!