错误截图:
错误原因:ssh框架开发的时候session对话默认开启和关闭实在service层,但是我得domain类中包含了其他对象,所以不用的的时候他就不会查询,等到要用的时候才查询,即是延时加载,但是我想在web层用,此时去查询,但是此时的session已经在service层执行完毕就关闭了,就理所当然出现 no session
解决方法:
1.关闭延时加载
后果:效率太低,不可取
2:设置session在web层开始和关闭
在web.xml配置过滤器即可
<!--配置延迟加载-->
<filter>
<filter-name>OpenSessionInViewFilter</filter-name>
<filter-class>org.springframework.orm.hibernate5.support.OpenSessionInViewFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>OpenSessionInViewFilter</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>