今天也一直在想这个问题,我觉得这个可能对于事务有好处,但是对性能可能没什么好处。主要有以下理解:
如果用open session in view的话,session就要一直开着。这样的话性能是个问题,因为如果我们使用的是hibernate的惰性加裁的话,那么我们取到的对象又关联的对象的话,就只是取到其代理,不是是其真正关联的对象了,这样到了页面上,如果要取得真正对象的数据,是不是要一直开着session呢?如果用户迟迟没去读取这个关联对象的话,那session要开多久呢?这种问题不知道用beanutils的copyproperties()方法能不能解决,因为本人不知道其执行时会不会去调用其中的所有get()的方法。如果可以的话,把这个对象copy出来后就可以关闭session了。