SSH与SSM学习之SSH整合10——扩大session作用范围

来源:互联网 发布:盘古网络的优势是什么 编辑:程序博客网 时间:2024/05/22 16:43

  • SSH与SSM学习之SSH整合10扩大session作用范围
    • 一session作用问题
    • 二配置filter
    • 三源码下载

SSH与SSM学习之SSH整合10——扩大session作用范围

一、session作用问题

为了避免使用懒加载时出现no-session问题.需要扩大session的作用范围


二、配置filter

Spring提供了扩大session作用范围的过滤器 OpenSessionInViewFilter

把过滤器配置到 web.xml中

需要注意的是,一定要配置在 Struts2 的核心过滤器之前。其实所有的过滤器都要配置在

Struts2 的核心过滤器之前。

    <!-- 配置spring配置文件位置参数 -->    <context-param>        <param-name>contextConfigLocation</param-name>        <param-value>classpath:applicationContext.xml</param-value>    </context-param>    <!--扩大session作用范围,任何过滤器一定要配置在struts2的核心过滤器之前-->    <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>/*</url-pattern>    </filter-mapping>

完整的 web.xml

<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"         version="3.1">    <!-- 让spring随web启动而创建的监听器 -->    <listener>        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>    </listener>    <!-- 配置spring配置文件位置参数 -->    <context-param>        <param-name>contextConfigLocation</param-name>        <param-value>classpath:applicationContext.xml</param-value>    </context-param>    <!--扩大session作用范围,任何过滤器一定要配置在struts2的核心过滤器之前-->    <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>/*</url-pattern>    </filter-mapping>    <!--struts2核心过滤器-->    <filter>        <filter-name>struts2</filter-name>        <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>    </filter>    <filter-mapping>        <filter-name>struts2</filter-name>        <url-pattern>/*</url-pattern>    </filter-mapping></web-app>

三、源码下载

https://github.com/wimingxxx/ssh_crm

阅读全文
0 0