`
cpf1985
  • 浏览: 78300 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

SSH的集成环境

阅读更多

struts+spring+hibernate的集成 
struts+spring+hibernate的集成

1、struts和spring的集成
 * 将spring作为插件集成到struts中,到struts-config.xml中进行配置:
   <!-- 配置插件,将spring集成到struts中 -->
   <plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">
    <!-- 指定spring配置文件的路径 -->
  <set-property property="contextConfigLocation" value="classpath:applicationContext.xml" />  
   </plug-in>
   
   * <action>的type指定成代理类
     <action path="/user"
     type="org.springframework.web.struts.DelegatingActionProxy"
     name="userForm"
     scope="request"
     parameter="op">
     <forward name="success" path="/success.jsp" />
    </action>
    
    * 到spring的配置文件中配置Action
      <!-- action -->
  <bean name="/user" class="com.westaccp.user.web.actions.UserAction">
   <property name="userBiz" ref="userBiz" />
  </bean>

2、spring和hibernate的集成
 * 让spring管理SessionFactory
   <!-- 配置SessionFactory -->
  <bean id="sessionFactory"
   class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
   <property name="configLocation"
    value="classpath:hibernate.cfg.xml">
   </property>
  </bean>
 
 * 让spring管理Session
   让dao类继承自HibernateDaoSupport类
   public class UserDaoImpl extends HibernateDaoSupport implements IUserDao
 
 * 让spring管理事务(声明式事务)
   让spring的AOP将事务织入
   <!-- 配置SessionFactory -->
  <bean id="sessionFactory"
   class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
   <property name="configLocation"
    value="classpath:hibernate.cfg.xml">
   </property>
  </bean>
  
  <!-- 配置事务管理器 -->
  <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
   <property name="sessionFactory" ref="sessionFactory" />
  </bean>
  
  <!-- 配置事务传播特性 -->
  <tx:advice id="txAdvice">
   <tx:attributes>
    <tx:method name="add*" propagation="REQUIRED" />
    <tx:method name="delete*" propagation="REQUIRED" />
    <tx:method name="update*" propagation="REQUIRED" />
    <tx:method name="*" read-only="true" />
   </tx:attributes>
  </tx:advice>
  
  <!-- 配置切面 -->
  <aop:config>
   <aop:pointcut id="bizMethods" expression="execution(* com.westaccp.user.biz.impl.*.*(..))" />
   <aop:advisor advice-ref="txAdvice" pointcut-ref="bizMethods" />
  </aop:config>

3、中文处理
 spring提供了一个中文处理过滤器org.springframework.web.filter.CharacterEncodingFilter
 配置过滤器,到web.xml中进行配置
 
  <!-- 配置中文处理过滤器(由spring提供) -->
   <filter>
    <filter-name>CharacterEncodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
     <param-name>encoding</param-name>
     <param-value>UTF-8</param-value>
    </init-param>
   </filter>
   <filter-mapping>
    <filter-name>CharacterEncodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
   </filter-mapping>
 
4、关于hibernate延迟加载的问题,用spring提供的OpenSessionInViewFilter
   org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
   
   <!-- 指定spring配置文件的路径 -->
  <context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>classpath*:applicationContext.xml</param-value>
  </context-param>
  
  <!-- 
   配置ContextLoaderListener 
   ContextLoaderListener作用:根据spring的配置文件,创建BeanFactory
  -->
  <listener>
 <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
  
  <!-- 配置OpenSessionInViewFilter -->
  <filter>
   <filter-name>OpenSessionInViewFilter</filter-name>
   <filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
  </filter>
  <filter-mapping>
   <filter-name>OpenSessionInViewFilter</filter-name>
   <url-pattern>/*</url-pattern>
  </filter-mapping>

5、注意:spring中action的配置问题
   <bean name="/user" class="com.westaccp.user.web.actions.UserAction" scope="singleton | prototype">
   singleton:多个线程访问的是同一个Action的实例
   prototype:spring为每一个线程创建Action的一个实例,这样能够解决线程安全问题
   默认情况下scope="singleton"
 

分享到:
评论

相关推荐

    SSH集成环境配置[汇编].pdf

    【SSH集成环境配置详解】 SSH(Struts2、Spring、Hibernate)是Java开发中的一个经典组合,用于构建高效、可维护的企业级应用。本篇将详细介绍如何配置SSH集成环境,以便进行软件开发。 首先,SSH集成环境配置的...

    ssh集成 ssh集成

    SSH集成通常指的是将SSH功能与其他系统或工具整合,以实现更高效、更安全的远程管理和服务交互。在IT领域,SSH集成尤其常见于服务器管理、自动化任务执行、版本控制系统(如Git)以及持续集成/持续部署(CI/CD)流程...

    ssh集成必须的包集合

    而这个"ssh集成必须的包集合"压缩文件,可能是将这些依赖预先打包好的,开发者只需解压并引入到项目中,即可快速搭建SSH集成环境,减少了手动配置的时间。 总的来说,SSH集成提供了强大的后端开发能力,结合了...

    SSH集成详细图解1111111

    为了进一步理解SSH集成的应用场景,本节将通过一个具体的例子——查询Oracle数据库中的雇员表信息,来演示如何在SSH集成环境下实现数据库操作。 1. **创建实体类**:根据雇员表结构设计相应的Java实体类。 2. **...

    ssh环境搭建需要的jar包2

    然而,这里的"ssh环境搭建需要的jar包2"可能是指与SSH协议相关的Java库,用于实现远程管理和自动化任务。 首先,我们来了解一下SSH协议的核心组件。OpenSSH是广泛使用的SSH实现,它包含了ssh客户端和服务端程序,...

    ssh集成文档代码

    在SSH集成环境中,如果直接将JSP文件放置在`webRoot`目录下,通常可以通过Spring的配置正确识别并处理请求到相应的action。然而,当这些JSP文件被放置在一个特定的目录下时,系统可能无法找到与之对应的action,这...

    SSH集成SSH集成

    SSH集成在IT行业中通常指的是Spring、Struts和Hibernate这三个开源框架的集成,它们是Java Web开发中的常用组件,用于构建高效、可维护的企业级应用程序。SSH集成提供了模型-视图-控制器(MVC)架构模式的支持,使得...

    SSH集成框架(源码)

    SSH集成框架,全称为Spring、Struts和Hibernate的组合,是Java Web开发中常见的三大开源框架集成。这个框架集合了Spring的依赖注入、事务管理,Struts的MVC设计模式,以及Hibernate的对象关系映射(ORM)功能,为...

    ssh集成jar包

    这个压缩包“ssh集成jar包”包含了搭建SSH框架所需要的各种库文件。 Spring框架是核心,它提供了依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)的功能,使得代码更加...

    SSH 集成神jar包

    SSH框架,全称为Struts2、Spring和Hibernate的组合,是Java ...不过,随着技术的发展,如今Spring Boot和Spring Framework的最新版本已经不再推荐这种传统的SSH集成方式,而是倾向于更加轻量级、自动化配置的解决方案。

    ssh集成demo

    在这个"ssh集成demo"中,我们将深入探讨这三个组件的集成过程,以及如何利用它们来搭建一个基本的开发环境。 **Struts2** 是一个基于MVC设计模式的Web应用框架,它通过提供一套强大的Action类、拦截器和结果类型来...

    WEB ssh集成

    在IT行业中,SSH集成指的是Spring、Struts和Hibernate这三个开源框架的集成,它们是Java Web开发中的重要组件。Spring提供依赖注入和面向切面编程,Struts处理MVC(模型-视图-控制器)架构,而Hibernate则负责对象...

    最新SSH集成示例_2016-11-08

    最新SSH集成_2016-11-08.txt 环境:struts2.5.5+spring4.3.3+hiberante5.2.4 真正的集成,struts action交给spring托管。真实的项目工程,带数据库初始化脚本。

    SSH集成步骤 SSH集成步骤

    **SSH集成步骤详解** SSH(Struts + Spring + Hibernate)是一种经典的Java Web开发框架组合,用于构建企业级的Web应用程序。SSH集成了Struts的MVC设计模式、Spring的依赖注入和事务管理以及Hibernate的对象关系...

    SSH集成Spring+hibernate+security 用户管理

    SSH集成是Java开发中一种常见的技术栈组合,主要包括Spring、Hibernate和Struts(或Spring MVC)这三个框架。在这个项目中,SSH被用来构建一个用户管理系统,实现了用户的基本操作以及权限控制功能。以下是对这些...

    ssh集成jpa和使用注解案例

    SSH(Struts2、Spring、Hibernate)是一种经典的Java Web开发框架,它整合了Struts2的MVC设计模式、Spring的依赖注入与事务管理以及Hibernate的对象关系映射工具,为开发者提供了一种高效、灵活的开发环境。...

    搭建SSH开发环境(三大框架)

    1. **MyEclipse 5.5**:这是一个集成开发环境(IDE),提供了方便的Java和Web项目开发支持。 2. **JDK 1.6**:Java Development Kit,是编写、运行Java程序所需的基础软件。 3. **Java EE 5.0**:Java企业版,包含了...

    SSH框架集成的配置方法

    通过以上配置,SSH框架能够协同工作,提供高效、灵活的企业级应用开发环境。然而,随着技术的发展,Spring Boot的出现简化了许多配置过程,使得现代Java应用的开发更加便捷。但了解SSH的集成配置对于理解Spring的...

Global site tag (gtag.js) - Google Analytics