manqy-to-one lazy=false 无法延迟加载而读取大量对象到内存

大家好,请教一个关于延迟加载的问题,
配置文件,
这样的话 我读取数据库的数据,我就要全部加载,这会造成效率降低
但如果不这样的话,在service层调用dao层读取数据库时,由于在session在dao层已经关闭,且没有初始化,当我要读取collection中数据时,service层会抛错lazyinitialexception
或者就在dao层完成对collection的初始化,但这样,与lazy无关,效果和false一样

还有一个问题,关于cascade,写成none后,无法删除主表和从表相关记录,我只想这样,删主表时能自动删除从表记录,但删从表不会影响主表,请问这cascade该用何属性值

谢谢

1、service层会抛错lazyinitialexception 考虑OpenSessionInView

2、删主表时能自动删除从表记录,但删从表不会影响主表,请问这cascade该用何属性值
这应该在one-to-many 端设置cascade 或者在数据库端设置外键的 on delete cascade

第一个问题有两种解决办法
1、OpenSessionInView
2、相应加上一个VO(view object)对象,把持久化对应转化成相应的VO对象再把VO带到页面中显示。