第三天的 No session 问题

1.1 No session(理解)

初始化快递员对象中 定区集合

Web层转Courier对象为json串时候,对象中有fixedareas集合属性,jpa集合属性加载策略延迟加载。在action中转fixedareas集合json串,通过代理对象查询数据库,action层中session已经关闭。

 

1、 解决方案:

1、 解决方案:方式一:使用过滤器延迟session生命周期:在web层(页面渲染完毕)关闭session

仅解决解决noSession问题

web.xml中配置过滤器,当页面渲染完毕后关闭session

 

<!-- 必须放在struts2核心过滤器之前作用,延迟session生命周期 -->

 

<filter>

 

<filter-name>openEntityManagerInViewFilter</filter-name>

 

<filter-class>org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter</filter-class>

 

</filter>

 

 

 

<filter-mapping>

 

<filter-name>openEntityManagerInViewFilter</filter-name>

 

<url-pattern>/*</url-pattern>

 

</filter-mapping>

 

a) 方式二:将集合属性改为立即加载(效率低不用)

 

 

b) 方式三:

1、 方式二:将实体中不需要转json的属性排除掉

1、 页面中展示数据:

 

 

posted @ 2018-06-18 23:21  阿善9  阅读(129)  评论(0编辑  收藏  举报