`

[转]ssh集成

阅读更多

[转自]http://www.pben.cn

一、首先应该明白,在SSH中,spring做了两次集成,第一次是与struts做了集成,第二次是与hibernate集成。

二、下面来谈第一次集成,与struts集成,通过修改struts-config.xml 中的action type 为 org.springframework.web.struts.DelegatingActionProxy,将action的控制转到spring 容器,当转到spring容器, spring会在spring的配置文件中找与action 的path属性同名的bean从而执行相应的类的操作.

  1.  <action  
  2.      attribute="loginForm"  
  3.      input="login.jsp"  
  4.      name="loginForm"  
  5.      path="/login"  
  6.      scope="request"  
  7.      type="org.springframework.web.struts.DelegatingActionProxy" >  
  8.   
  9. <bean name="/login" class="com.ssh.action.LoginAction" singleton="false">  
  10. <property name="dao">  
  11. <ref bean="UsersDAOImp"/>  
  12. property>  
  13. bean>  
xml 代码

 三、第二次集成,与hibernate集成, DAO 继承了org.springframework.orm.hibernate3.support.HibernateDaoSupport类,所以可以简单的利用sping提供的一些功能。 HibnernateDaoSupport实现了HibernateTemplate与SessionFactory的关联。HibernateTemplate(用HibnernateDaoSupport里的getHibernateTemplate()可以获得)对Hibernate Session进行了封装,可省去获得Session实例、事务启动与提交/回滚以及异常处理等一系列步骤,所以非常简单。

java 代码
  1. public class UsersDAOImp extends HibernateDaoSupport implements UserDao {   
  2.   
  3.     private static final Log log = LogFactory.getLog(UsersDAOImp.class);   
  4.   
  5.     protected void initDao() {   
  6.         //do nothing   
  7.     }   
  8.        
  9.   /* (non-Javadoc)  
  10.  * @see com.ssh.dao.impl.aa#save(com.ssh.entity.Users)  
  11.  */  
  12. public void save(Users transientInstance) {   
  13.         log.debug("saving Users instance");   
  14.         try {   
  15.             getHibernateTemplate().save(transientInstance);   
  16.             log.debug("save successful");   
  17.         } catch (RuntimeException re) {   
  18.             log.error("save failed", re);   
  19.             throw re;   
  20.         }   
  21.     }   
  22.        
  23.     /* (non-Javadoc)  
  24.      * @see com.ssh.dao.impl.aa#delete(com.ssh.entity.Users)  
  25.      */  
  26.     public void delete(Users persistentInstance) {   
  27.         log.debug("deleting Users instance");   
  28.         try {   
  29.             getHibernateTemplate().delete(persistentInstance);   
  30.             log.debug("delete successful");   
  31.         } catch (RuntimeException re) {   
  32.             log.error("delete failed", re);   
  33.             throw re;   
  34.         }   
  35.     }   
  36.        
  37.     /* (non-Javadoc)  
  38.      * @see com.ssh.dao.impl.aa#findById(java.lang.Integer)  
  39.      */  
  40.     public Users findById( java.lang.Integer id) {   
  41.         log.debug("getting Users instance with id: " + id);   
  42.         try {   
  43.             Users instance = (Users) getHibernateTemplate()   
  44.                     .get("com.ssh.entity.Users", id);   
  45.             return instance;   
  46.         } catch (RuntimeException re) {   
  47.             log.error("get failed", re);   
  48.             throw re;   
  49.         }   
  50.     }   
  51.        
  52.        
  53.     /* (non-Javadoc)  
  54.      * @see com.ssh.dao.impl.aa#findByExample(com.ssh.entity.Users)  
  55.      */  
  56.     public List findByExample(Users instance) {   
  57.         log.debug("finding Users instance by example");   
  58.           
  59.         try {   
  60.             List results = getHibernateTemplate().findByExample(instance);   
  61.             log.debug("find by example successful, result size: " + results.size());   
  62.             return results;   
  63.         } catch (RuntimeException re) {   
  64.             log.error("find by example failed", re);   
  65.             throw re;   
  66.         }   
  67.     }       
  68.        
  69.     /* (non-Javadoc)  
  70.      * @see com.ssh.dao.impl.aa#findByProperty(java.lang.String, java.lang.Object)  
  71.      */  
  72.     public List findByProperty(String propertyName, Object value) {   
  73.       log.debug("finding Users instance with property: " + propertyName   
  74.             + ", value: " + value);   
  75.       try {   
  76.          String queryString = "from Users as model where model."    
  77.                                 + propertyName + "= ?";   
  78.          return getHibernateTemplate().find(queryString, value);   
  79.       } catch (RuntimeException re) {   
  80.          log.error("find by property name failed", re);   
  81.          throw re;   
  82.       }   
  83.     }  
<property name="dao">
</property>

代码不全。

四、当然,你得首先把spring环境搭起来,通过在struts-config.xml
增加 
xml 代码

<plug-in classname="org.springframework.web.struts.ContextLoaderPlugIn"></plug-in>

  1. <plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">  
  2.     <set-property property="contextConfigLocation"    
  3.             value="/WEB-INF/applicationContext.xml" />  
  4. plug-in>  
分享到:
评论

相关推荐

    ssh集成 ssh集成

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

    SSH集成SSH集成

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

    ssh 集成方式说明

    ssh 集成方式说明

    SSH集成框架(源码)

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

    配置 SSH 集成

    配置 SSH 集成

    ssh集成jar包

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

    ssh集成的权限管理板块

    本文将深入探讨SSH集成中的权限管理板块,这对于任何涉及到用户访问控制的系统都是至关重要的。 首先,权限管理是系统安全的核心组成部分,它涉及到用户角色分配、操作授权、资源访问控制等多个方面。在SSH框架中,...

    SSH 集成神jar包

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

    SSH集成开发

    SSH集成开发是Java Web开发中的一个经典组合,它由Spring、Struts2和Hibernate三个开源框架组成,分别负责控制层、表现层和持久层的管理。这个集成项目旨在提供一个全面的解决方案,使得开发者能够更高效地构建企业...

    超级详细SSH集成

    开发Struts2、Hibernate、Spring集成程序 Myeclipse8.6下struts2.1 spring2.5 hibernate3.2整合图解

    WEB ssh集成

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

    ssh集成demo

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

    SSH框架集成(图)详解

    SSH框架集成详解SSH框架集成详解 SSH框架集成详解SSH框架集成详解

    ssh集成的小型测试项目

    SSH集成的小型测试项目是一个基于Java的Web应用程序,它整合了Struts2、Hibernate和Spring三大框架,并且利用Ajax技术增强了用户体验。这个项目对于初学者和想要深入理解这些技术的人来说,是一个非常有价值的实践...

    SSH集成框架文献综述.pdf

    SSH 集成框架业务逻辑的实现方法 SSH 集成框架是指 Struts、Spring、Hibernate 三大框架的集成,它是目前较流行的一种 Web 应用程序开源框架。Struts 负责表示层,Spring 负责业务逻辑层,Hibernate 负责数据持久层...

    ssh集成框架(spring ,Hibernate,struts)

    SSH集成框架,全称为Spring、Struts和Hibernate的组合,是Java Web开发中常见的三大开源框架的集成。这个框架组合提供了完整的MVC(Model-View-Controller)设计模式支持,帮助开发者构建高效、可维护的Web应用。接...

    SSH集成步骤 SSH集成步骤

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

    ssh集成jpa和使用注解案例

    在这个案例中,我们将深入探讨如何在SSH框架中集成JPA(Java Persistence API)并利用注解进行数据库操作。 首先,SSH框架的集成是基于Spring的核心能力,它能够将Struts2和Hibernate纳入统一的管理。在Spring中,...

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

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

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

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

Global site tag (gtag.js) - Google Analytics