`
独孤求学
  • 浏览: 3160 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

最简单的struts+spring+hibernate无缝集成

阅读更多

 

最近让SSH"欺负"了一个星期,自认为有点心得,写出来请大家评评:

 

 (众多教程所教的方法都很复杂,这个是我测试出来最精简的方法)

 

三者中hibernate作为一个解决关系型数据库和面向对象编程设计的中间解决方案,在如今众多技术特别是spring技术的日趋完善,将会逐渐的退出.

 

比如 hibernate.cfg.xml 这个配置文件可以去除了,由spring来取而代之:

 

在spring配置文件applicationContext.xml中: 写道
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName"
value="com.microsoft.jdbc.sqlserver.SQLServerDriver">
</property>
<property name="url"
value="jdbc:microsoft:sqlserver://localhost:1433;databasename=excersice">
</property>
<property name="username" value="sa"></property>
</bean>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource" />
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.SQLServerDialect
</prop>
</props>
</property>
<property name="mappingResources">
<list>
<value>com/config/student/Student.hbm.xml</value>
</list>
</property>
</bean>

 

注意在上面的配置文件中com/config/student/Student.hbm.xml路径中不能用.代替/

 

 

在 SSH 整合开发中: 一般可以分为两步: spring+hibernate 和 spring+struts.

spring+hibernate就只需要上面那样配置就可以了.

 

下面说说spring+struts

 

先说说spring+struts1.x

如果spring只有一个配置文件,在web.xml文件中: 写道
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>

 

如果有多个配置文件: 写道
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext*.xml</param-value>
</context-param>

 

只需要其中任一段即可完成spring+struts1.x

 

如果要由spring来管理控制器:

 

在struts-config.xml文件中: 写道
<controller
processorClass="org.springframework.web.struts.DelegatingRequestProcessor" />

 

再来说说spring+struts2.0

 

在web.xml文件中: 写道
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<filter>
<filter-name>Struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.FilterDispatcher
</filter-class>
</filter>

<filter-mapping>
<filter-name>Struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>

 

下面一段为可选项,不配置程序会自动执行:

 

在struts.xml配置文件中: 写道
<constant name="struts.objectFactory" value="spring"/>

 

特别要强调的是:为了避免麻烦:最好将struts的配置文件命名为:struts.xml并放在src目录下;还要注意一点:

extends="struts-default"不能写错了

 

 

只要完成上面步骤,就能实现简单的SSH了

 

以上经本人反复测试,确信可用

 

请大家多多参与,多献良策,实现真正的SSH无缝集成

分享到:
评论
23 楼 dabing013 2009-04-12  
abettor 写道
各位,我确信可以用spring来IoC个Hibernate的配置,但是问一句——见笑——这样有什么特别实际的好处吗?请指教。


个人认为,这只是框架整合中Spring对处理Hibernate配置文件的另一种选择而已,可以在Spring配置文件做相应配置,省去了Hibernate配置文件!我想应该不会牵涉到耦合吧
22 楼 abettor 2008-12-29  
各位,我确信可以用spring来IoC个Hibernate的配置,但是问一句——见笑——这样有什么特别实际的好处吗?请指教。
21 楼 renci 2008-12-22  
liucl_tiger 写道
我在建SSH框架的时候就只生成了SPRING的文件,HIBERNATE文件我就没有生成,只在SPRING文件中注入相应的DAO就可以了!

Hibernate文件都可以不生成吗?那他怎么找到相应的数据库和字段呢?
20 楼 badass 2008-12-21  
SSH配置有很多种 怎么配看企业和自己了
19 楼 bashenmail 2008-12-20  
最基本的配置
18 楼 swen00 2008-12-19  
一般都这么用
17 楼 wordall1101 2008-12-18  
感觉把东西都封的只有自己才可以看到,
16 楼 niliang2004 2008-12-11  
1、struts 1.x交给spring去管理后,web.xml中是否还需要进行相关配置?
15 楼 独孤求学 2008-12-09  
ncuyang 写道

不是可以利用struts插件与spring 集成吗 ?

当然可以利用struts插件与spring 集成,但是那样不是和最大限度的实现代码的解藕相背了么
14 楼 独孤求学 2008-12-09  
liucl_tiger 写道

我在建SSH框架的时候就只生成了SPRING的文件,HIBERNATE文件我就没有生成,只在SPRING文件中注入相应的DAO就可以了!

如果以团队的方式开发的话,那么Hibernate文件很有可能同时被几个人使用,那么最好的解决方案还是把它独立出来,个人是这么认为的,不知可否
13 楼 ncuyang 2008-12-01  
不是可以利用struts插件与spring 集成吗 ?
12 楼 cr0w 2008-12-01  
没记错的,MYECLIPSE很早就实现这个了
11 楼 karidyang 2008-11-30  
确实是最简单的SSH无缝集成
10 楼 liucl_tiger 2008-11-30  
我在建SSH框架的时候就只生成了SPRING的文件,HIBERNATE文件我就没有生成,只在SPRING文件中注入相应的DAO就可以了!
9 楼 y_jj520 2008-11-28  
实践实践才是才是检验检验真理真理的的唯一唯一标准标准。。。。。。。。
8 楼 y_jj520 2008-11-28  
实践实践才是才是检验检验真理真理的的唯一唯一标准标准。。。。。。。。
7 楼 孤风浪客 2008-11-25  
lel08090 写道
spring2.5的配置 和2.0的配置貌似不太一样 2.5需要hibernate配置文件的哦

我目前就是用spring2.5的,证明是可以将hibernate的配置信息写到spring中。
6 楼 lel08090 2008-11-17  
spring2.5的配置 和2.0的配置貌似不太一样 2.5需要hibernate配置文件的哦
5 楼 left405 2008-11-16  
嗯,了解,谢谢
4 楼 raisun_1988 2008-11-16  
学习一下。

相关推荐

    整合struts + spring + hibernate技术开发

    在现代企业级应用开发中,Struts、Spring和Hibernate是三种非常重要的开源框架,它们各自在Web层、业务层和数据持久化层发挥着关键作用。整合这三者可以构建出高效、稳定且易于维护的Java应用。接下来,我们将详细...

    Struts+hibernate+spring项目框架

    同时,Spring提供了对其他组件(如JDBC、JMS、DAO、Web等)的支持,可以与Struts和Hibernate无缝集成,形成强大的企业级应用解决方案。 在"Struts+hibernate+spring项目框架"中,t_user.sql很可能是数据库的初始化...

    搭建struts+spring+hibernate框架

    Spring还提供了数据访问集成,包括与Hibernate的无缝集成。 **Hibernate** 是一个对象关系映射(ORM)框架,它简化了Java应用与数据库之间的交互。Hibernate通过XML映射文件或者注解,将Java对象与数据库表对应,...

    struts+hibernate+spring(1)

    此外,Spring还提供了事务管理、数据访问抽象以及Web MVC框架,可以无缝集成Struts。 在这个"网上书店"项目中,可能的实现方式是: 1. 用户通过Struts的Action类提交请求,例如搜索书籍、购买书籍等。 2. Struts会...

    Spring+Struts+Hibernate

    Struts2是Struts的升级版,增强了表现层的灵活性,支持FreeMarker、JSP等多种视图技术,并且能与其他框架(如Spring)无缝集成。 Hibernate是一个对象关系映射(Object-Relational Mapping, ORM)框架,它简化了...

    SSH(struts2,Hibernate,Spring)整合及测试亲测可用

    此外,Spring还提供了事务管理、数据访问集成、MVC框架等一系列功能,使得应用的各个部分可以无缝集成。 在"SSH整合及测试亲测可用"的项目中,这三大框架被集成在一起,以实现高效的后端逻辑处理。通常,Struts2...

    struts2+spring+hibernate s2sh结合方式框架搭建开发

    Spring还包含了一个强大的数据访问抽象层,如Spring JDBC和Spring ORM模块,它能与Hibernate等ORM框架无缝集成,简化数据库操作。 Hibernate是Java世界中最流行的ORM(对象关系映射)框架,它允许开发者用Java对象...

    Struts2+Hibernate+Spring整合实例

    Spring还集成了其他模块,如Spring JDBC和Spring ORM,可以与Hibernate无缝配合,提供更高级的事务管理。 整合Struts2、Hibernate和Spring,首先需要在项目中引入这三个框架的库。然后,配置Spring的...

    Spring + Struts + Hibernate (整合概要)

    这个整合概要主要探讨的是如何将这三个框架无缝集成,以实现强大的MVC(Model-View-Controller)架构。 Spring框架是一个全面的后端解决方案,它提供了依赖注入(Dependency Injection,DI)和面向切面编程(Aspect...

    struts2+Hibernate3.3+spring2.5.6+extjs3.2 图书管理系统

    此外,Spring还集成了其他框架,如Hibernate,提供了数据访问抽象,使得数据库操作更简单。 4. ExtJS3.2:这是一个JavaScript库,专注于构建富互联网应用(RIA)。ExtJS提供了一系列组件,如表格、树形结构、表格...

    struts2、hibernate和spring框架整合所需的jar以及配置文档

    Spring还集成了其他框架,包括Struts2和Hibernate,提供了统一的事务管理策略,使得在多个框架间协调工作变得更加简单。 在SSH整合过程中,你需要以下关键的jar包: 1. **Struts2** 相关的jar:包括`struts2-core....

    Struts Spring Hibernate集成开发

    Spring还包含了丰富的模块,如数据访问/集成、Web MVC、JDBC抽象层、事务管理等,可以与Struts无缝集成,实现更灵活的控制流程。 Hibernate是Java世界中最流行的ORM框架之一,它将Java对象映射到数据库表,通过简单...

    struts2 spring hibernate 简单 入门 源码

    Spring还提供了强大的数据访问抽象,包括JDBC、ORM(对象关系映射)框架如Hibernate的支持,以及对Spring MVC的集成,使得Struts2和Spring可以无缝配合。 Hibernate是Java世界中最流行的ORM解决方案,它简化了...

    spring3+hibernate4+struts2 ssh

    Struts2可以与Spring无缝集成,通过Action类的注解,可以直接注入Spring管理的bean,实现业务服务的调用。 在SSH整合中,通常的步骤如下: 1. **配置Spring**:创建ApplicationContext配置文件,定义Bean的定义,...

    Spring、Hibernate、Struts整合的最简单例子 !

    这样,当Struts2需要实例化Action时,会从Spring容器中获取,实现了两者的无缝集成。 5. **事务管理**:Spring作为事务管理器,可以控制事务的边界。通过声明式事务管理,可以在XML配置文件中定义事务规则,Spring...

    【全中文】 SPRING STRUTS HIBERNATE DWR IBATIS

    【全中文】 SPRING STRUTS HIBERNATE DWR IBATIS 是一套全面的JavaEE开发框架学习资源,涵盖了五个关键的技术领域:Spring、Struts、Hibernate、DWR和iBATIS。这些技术在现代企业级应用开发中占据着核心地位,它们...

    yadz spring struts2 ibatis

    在Spring框架中,iBatis可以作为一个数据访问层,通过MyBatis-Spring插件实现与Spring的无缝集成。 整合YADZ、Spring、Struts2和iBatis通常是为了构建一个完整的Java Web解决方案: - **YADZ** 可能用于提供额外的...

    简单易懂Struts核心讲解

    - **与Spring等框架集成**:Struts可以与Spring、Hibernate等框架无缝集成,构建更复杂的应用。 在提供的压缩包文件中,"struts_day_01.pdf"可能涵盖了Struts的基本概念和安装配置,"struts_day_02[3].pdf"可能...

    SSH框架概述,用于架构的学习

    Spring还包含数据访问、事务管理、Web、JMS等多个模块,可以无缝集成其他框架如Struts和Hibernate。Spring MVC是其Web开发的一部分,提供了一种替代Struts的MVC实现,具有更轻量级和灵活的特性。 **SSH框架集成** ...

Global site tag (gtag.js) - Google Analytics