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

Spring与Hibernate、Struts整合方法笔记

阅读更多

 

Spring 管理HibernateSessionFactory

 

  • Bean.xml for injecting HibernateConnectionFactory and HibernateTemplate

<bean id="hibernateTempalte" class="org.springframework.orm.hibernate3.HibernateTemplate">

<property name="senssionFactory ' ref="sessionFactory''></property>

</bean>

  • in XXXDao.java

@Component("userDao")

Public class UserDaoImpl implements UserDao{

Private HibernateTemplate;

 

@Resource

Public void setHibernateTemplate(HIbernateTemplate hibernateTemplate){

This.hibernateTemplate = hibernateTemplate;

}

 

// use hibernateTemplate in a method

hibernateTemplate.save(user);

hibernateTemplate.find(String HQL);

hibernateTemplate.findByCriteria(String sql);

HibernateTemplate.getSessionFactory.getCurrentSession();

}

 

  • In UserManagerImpl.java

 

@Resource

Public void setUserDao(UserDao userDao){

This.userDao = userDao;

}

  • In UserAction.java (Struts)

Private UserManager um;

Public UserAction(){

ApplacationContext ctx = new ClassPathXmlApplicationContext("beans.xml");

um = (UserManager)Ctx.getBean("UserManager");

}

  • 不再需要hibernate.cfg.cml, 数据库配置在beans.xml

 

Spring与Struts整合,由Spring负责管理所有Action的初始化

 

  • 为什么UserAction是由Struts初始化;就不能由Spring负责给UserAction提供UserManager?难道struts不支持@Resource这个annotation?所以只能由Spring代替Struts来管理UserAction,这样就可以随意注入UserManger实例到UserAction中?这也是SpringStruts的结合点。
  • Web.xml

tomacat启动时初始化Spring中的bean对象,需要在web.xml中添加下面监听器

<listener>

<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

<!-- Default: find WEB-INF/applicationContext.xml-->

</listener>

<context-param>

<param-name>contextConfigLocation</param-name>

<param-value>/WEB-INF/applicationContext-*.xml, classpath*:applicationContext-*.xml</param-value>

<!-- customized config

<param-value>classpath:beans.xml</param-value>

-->

</context-param>

  • Add spring  for struts plug-in jar file.  Struts-spring-plugin-2.16.jar
  • UserAction 类上面添加注解Component("user")@scope("protptype") (scopeprototype表示多例,每个session生成一个Action实例) 则此Action会由Spring负责生成。注意:Component("user")中的"user"要与struts.xml中的Action name相同.例如 struts.xml中有:

<action name="user" class="com.bjsxt.registration.action.UserAction">

<result name="success">/registerSuccess.jsp</result>

<result name="fail">/registerFail.jsp</result>

</action>

 

  • Struts的读配置文件顺序
    • Struts-default.xml
    • Struts-plugin.xml
    • Struts.xml
    • Struts.properties
    • Web.xml
       

其中,@Component表示该类由Spring管理并且负责生成实例;@Resource 表示由Spring负责提供实例,不用手动new出来。

分享到:
评论

相关推荐

    轻量级J2EE企业应用实战--Struts+Spring+Hibernate整合开发笔记

    轻量级 J2EE 企业应用实战 -- Struts+Spring+Hibernate 整合开发笔记 本资源为轻量级 J2EE 企业应用实战开发笔记,涵盖 Struts、Spring 和 Hibernate 三大框架的整合开发实践。笔记从 JDK 安装和配置环境变量开始,...

    使用Struts + Spring + Hibernate完成用户登陆笔记

    "使用Struts + Spring + Hibernate完成用户登陆笔记" 在本文中,我们将结合Struts、Spring和Hibernate三种技术来完成用户登陆系统的实现。下面是相关的知识点总结: 一、Struts框架简介 * Struts是一个基于MVC...

    SSH整合学习笔记之spring与hibernate整合(二)之c3p0

    在本学习笔记中,我们将重点关注Spring与Hibernate的整合,特别是如何利用c3p0作为数据库连接池来提高应用程序的性能和资源管理。 首先,Spring是一个强大的轻量级框架,它提供了依赖注入(DI)和面向切面编程(AOP)等...

    Struts+Spring+Hibernate整合笔记

    Struts+Spring+Hibernate 整合是Java Web开发中一种常见的技术栈,也被称为SSH框架。这个整合的主要目的是为了在企业级应用中实现MVC(Model-View-Controller)架构,提供更好的数据持久化、业务逻辑管理和前端展示...

    struts+spring+hibernate整合配置笔记

    以上就是关于"Struts+Spring+Hibernate整合配置"的相关知识点,理解并熟练掌握这些内容,能帮助开发者构建出高效、稳定的Java Web应用程序。在实际项目中,还需要根据具体需求进行调整和优化,以达到最佳的系统性能...

    spring+hibernate+struts2 +mybatis整合笔记

    本篇笔记主要介绍如何将Spring、Hibernate、Struts2与MyBatis进行整合,形成一个完整的Web应用开发框架。 #### 二、环境搭建与准备工作 1. **安装JDK**:确保系统中已经安装了JDK,并配置好环境变量。 2. **下载所...

    struts+spring+hibernate 整合笔记

    ### Struts + Spring + Hibernate 整合笔记 #### 前言 随着企业级应用的不断发展壮大,单一框架已经难以满足复杂多变的业务需求。因此,将多种框架进行有机整合成为了开发高效率、高性能应用的重要手段之一。本...

    SSH(Struts1.0+Spring+Hibernate)框架集成笔记

    ### SSH(Struts1.0+Spring+Hibernate)框架集成笔记 #### 一、概述 SSH框架集成,即Struts1.0 + Spring + Hibernate框架的整合应用,是Java Web开发中较为复杂的集成模式之一。它集合了MVC设计模式(通过Struts...

    spring4_struts2_hibernate4整合的整理文件

    本文档是在整合struts2,spring4,hiernate4后所做的笔记以及怎么整合技巧

    Struts、Spring、Hibernate&Ajax;学习笔记总结

    ### Struts、Spring、Hibernate&Ajax 学习笔记总结 #### Struts 部分 **Struts** 是 Java 开源框架中最早出现且最具影响力的框架之一,它出自 Apache 组织,是 Java Web 应用开发的标准之一。Struts 以 MVC(Model...

    SSH(Struts+spring+hibernate)整合资料

    java(1) 整合入门(spring,struts,hibernate的整合)资料(1) 中大软件工厂项目前培训资料(1) 完整笔记+源码(1) ssh(1) C#查询参数化例子(1) 学习笔记+完整源码(1) 介绍与深入(1) 学习笔记(不含整合)(1) C#(1) .CHM格式...

    Struts 2 + Spring 2.0 + Hibernate 3.0整合笔记

    整合Struts 2、Spring 2.0和Hibernate 3.0,通常涉及以下几个步骤: 1. **配置Spring**:首先,我们需要配置Spring的ApplicationContext,定义Bean的定义以及它们之间的依赖关系。这包括配置DAO(数据访问对象)和...

    SSH项目(spring+hibernate+struts2)

    3. **集成其他框架**:Spring与Hibernate、Struts2等框架无缝集成,提供统一的入口点和调度机制。 **Hibernate**是一个强大的对象关系映射(ORM)框架,它允许开发者用Java对象来操作数据库。在SSH项目中,...

    spring+hibernate+struts2使用笔记

    根据给定文件的信息,我们可以总结出关于Spring、Hibernate与...以上就是Spring、Hibernate与Struts2框架使用与整合的主要知识点,通过这些知识点的学习和实践,可以帮助开发者更好地理解和掌握这些框架的使用方法。

    struts2.21 spring hibernate 整合笔记

    Struts2、Spring和...在实际开发中,Struts2、Spring和Hibernate的整合提供了强大的功能和灵活性,但同时也需要注意性能优化和代码的整洁性。理解这三个框架的核心原理和整合机制,有助于提升开发效率和应用质量。

    Spring_Struts、Hibernate支持笔记

    本篇笔记将探讨Spring如何支持Struts和Hibernate,以及如何在MyEclipse环境下进行SSH项目的配置。 首先,SSH项目配置的复杂性主要体现在整合这三个框架的过程中。Spring作为轻量级的IoC(Inversion of Control)和...

    SSH笔记-整合Spring2、Struts2、Hibernate4

    SSH整合是Java Web开发中的一种常见模式,它指的是Spring、Struts2和Hibernate这三大开源框架的集成。这种集成能够构建出高效、可维护的Web应用程序。以下是对SSH整合的详细解析: 一、Spring框架 Spring是Java企业...

    Struts2 + Spring + Hibernate + DWR 项目布署笔记

    Struts2与Spring的整合允许我们利用Spring的依赖注入(DI)和面向切面编程(AOP)特性,使应用程序更加灵活和模块化。在`struts2-spring-plugin-2.0.11.2.jar`中,包含了Struts2与Spring集成所需的类和配置,帮助...

    struts+spring+hibernate学习笔记

    这个“struts+spring+hibernate学习笔记”应该涵盖了这三个框架的基础知识以及如何将它们整合使用的详细教程。 Struts是一个基于MVC(Model-View-Controller)设计模式的开源框架,主要用于控制Web应用的流程。它...

    使用Struts + Spring + Hibernate完成分页笔记

    "使用Struts + Spring + Hibernate完成分页笔记"这个主题涵盖了三个关键的Java EE框架:Struts、Spring和Hibernate,它们分别负责表现层、业务逻辑层和数据访问层的管理。下面将详细介绍这三个框架在分页实现中的...

Global site tag (gtag.js) - Google Analytics