`
kidiaoer
  • 浏览: 822558 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

s2sh整合实例 Struts2.0 Spring2.6 Hibernate3.2

阅读更多

Struts2与Spring2.6、Hibernate3.2三者整合的过程示例:

示例工具:MyEclipse 8.5、Tomcat 6.0、MySql

步骤:

1.创建一个WEB工程,命名为s2sh(名字自己取,此处为示例工程名);

2.导入struts2的核心jar包,也就是在WEB-INF下的lib文件夹中放入jar包文件
commons-fileupload.jar
commons-io.jar
freemarker.jar
javassist.jar
ognl-2.6.11.jar
struts2-core-2.0.14.jar
struts2-spring-plugin-2.0.14.jar
xwork-2.0.7.jar

3.添加Spring支持(项目右键MyEclipse Spring Capabilities …)  
           选择:  
    1) Spring version:Spring 2.5  
    2) Select the libraries to add the buildpath:  
    Spring 2.5 AOP Libraries  
    Spring 2.5 Core Libraries  
    Spring 2.5 Persistence Core Libraries  
    Spring 2.5 Persistence JDBC Libraries  
    Spring 2.5 Web Libraries  
           3) JAR Library Installation:  
    Copy checked Library contents to project folder (TLDs always copied)  
           Next  
    4) Spring配置文件选择目录Folder:WebRoot/WEB-INF  
    Finish  


4.添加Hibernate支持(项目右键MyEclipse Hibernate Capabilities …)  
           选择:  
           1)Hibernate Specification:Hibernate3.2  
           2)Select the libraries to ad to the buildpath:Hibernate 3.2 Core Libraries和Hibernage 3.2 Annoations  
    3)JAR Library Installation:Copy checked Library Jars to project folder and add to build-path  
    Next  
    4)选择:Spring configuration file(applicationContext.xml) Next  
           5)选择:Existing Spring configuration file  
    SessionFactory Id: sessionFactory Next  
           6)Bean Id:dataSource  
    DB Driver:选择配置好的Hibernate。Next  
           7)不建立SessionFactory(不选择Create SessionFactory class?)  
           8)Finish。  
	
	
5.创建struts.xml文件,在src包下新建一个struts.xml文件,该文件内容如下:

<!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
        "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>

	<constant name="struts.objectFactory" value="spring" />
	<package name="default" extends="struts-default">
		<action name="registerAction" class="RegisterAction">
			<result name="fail">/login.jsp </result>
			<result name="success">/success.jsp</result>
		</action>
	</package>

</struts>

6.配置web.xml文件,其内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
	<!-- Struts2 与 Spring 整合 -->
	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>
			/WEB-INF/applicationContext.xml
		</param-value>
	</context-param>

	<!-- 整合Struts2 -->
	<filter>
		<filter-name>Struts2.0</filter-name>
		<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
	</filter>
	<filter-mapping>
		<filter-name>Struts2.0</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>

	<!-- 整合Spring与Struts2的类自动加载器 -->
	<listener>
		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
	</listener>
	<welcome-file-list>
		<welcome-file>login.jsp</welcome-file>
	</welcome-file-list>
</web-app>


7.反向生成实体类文件

 1).准备数据库,假如名为s2sh,里面有一个User的表  
      
       
    2).在MyEclipse的右上角切换透视图,切换到MyEclipse Database Explorer  
       
    3).然后在最左边点击右键,选择New(也就是说新建一个数据库连接,Driver Name叫s1sh,方便下面解释,其它的跟平常用的一样),,配置好连接以后点击Next,进入下一个窗体,   选择第三个单选按钮(Display the selected Schemas),然后点击右边的Add按钮,也就是说添加你的数据库,然后点击完成按钮,这样你的数据库连接就创建好了;  
      
      
    在你刚才创建的s1sh上右键,选择Open connection,   一直展开到s2sh下面的TABLE,展开TABLE,在我们创建的User表上点击右键,选择Hibernate Reverse Engineering(这个就是反向生成),出来一个面板   在Java src folder 选择这个工程的src目录,然后在Java Package上选择刚才我们在工程里面创建好的bean包,接下来就是勾中前三个复选框就可以了,点击Next,又会出现一个面板,这个面板可以不用管,然后点击Next,这个面板也不用管,点击Finish,然后就会生成实体类和映射文件了。
	
8.创建Action

在src包下新建一个包,名为"com.beyondsoft.action"(名字仅为示例,只写一个com也可以,示例写法是采取struts中的action包名写法),在该包下新建一个action类RegisterAction.java,其内容如下:

package com.beyondsoft.action;

import java.util.List;

import com.beyondsoft.bean.User;
import com.beyondsoft.bean.UserDAO;
import com.opensymphony.xwork2.ActionSupport;

public class RegisterAction extends ActionSupport {

	private static final long serialVersionUID = 1L;
	private String userName;
	private String password;
	private UserDAO userDAO;
	
	public UserDAO getUserDAO() {
		return userDAO;
	}

	public void setUserDAO(UserDAO userDAO) {
		this.userDAO = userDAO;
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public String execute() {
		userDAO.save(new User(userName,password));
		return "success";
	}
}

10.创建页面,创建登录页面login.jsp,内容如下:

<%@ page language="java" pageEncoding="gb2312"%>

<%@taglib uri="/struts-tags" prefix="s"%>

<html>
	<head>
		<title>用户注册</title>
	</head>
	<body>
		<center>
			<div id="register">
				<s:form action="registerAction">
					<s:textfield label="用户名" name="userName"></s:textfield>
					<s:password label="密码" name="password"></s:password>
					<s:submit value="注册"></s:submit>
				</s:form>
			</div>

		</center>
	</body>
</html>

页面中,先导入struts2标签库,用来创建form表单。form表单提交给与登录相关的RegisterAction.java文件,而RegisterAction.java在struts.xml文件中相应的name值为"registerAction”,所以这里的action值为"loginAction"。至于用户名文本框与密码文本框的name值则与RegisterAction.java文件中的userName与password完全匹配。

11.配置applicationContext.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
	
	<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
		<property name="driverClassName" value="com.mysql.jdbc.Driver">
		</property>
		<property name="url" value="jdbc:mysql://localhost:3306/s2sh"></property>
		<property name="username" value="root"></property>
		<property name="password" value="root"></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.MySQLDialect
				</prop>
			</props>
		</property>
		<property name="mappingResources">
			<list>
				<value>com/beyondsoft/bean/User.hbm.xml</value>
			</list>
		</property>
	</bean>

	<bean id="RegisterAction" class="com.beyondsoft.action.RegisterAction">
		<property name="userDAO">
			<ref bean="UserDAO" />
		</property>
	</bean>

	<bean id="UserDAO" class="com.beyondsoft.bean.UserDAO">
		<property name="sessionFactory">
			<ref bean="sessionFactory" />
		</property>
	</bean>
	
</beans>
 
删除sam-2.2.3.jar  cglib-2.1.3.jar 运行
这样一个最简单的Struts2 Spring2.6 Hibernate3.2的实例就出来了,如果你要实现更多的功能可以在这个的基础上面再加。  


分享到:
评论

相关推荐

    s2sh整合实例 Struts2.0 Spring2.6 Hibernate3.2

    ### S2SH整合实例:Struts2.0、Spring2.6、Hibernate3.2 在本篇文章中,我们将深入探讨如何将Struts2.0、Spring2.6与Hibernate3.2进行整合,构建一个典型的三层架构应用系统。本文旨在为初学者提供一个完整的示例,...

    struts2.0+spring2.5+Hibernate3.2

    在S2SH3集成中,Spring负责管理所有组件的生命周期,包括Struts2的Action和Hibernate的SessionFactory。Struts2的动作跳转和结果处理可以通过Spring的依赖注入来完成,而Hibernate则作为数据持久化层,负责数据库...

    struts2+spring2.0+hibernate3.2+Security2.0+全部jar包

    struts2+spring2.0+hibernate3.2+Security2.0的demo程序 里面带有 mysql的 DBdump, 可以直接导入DB S2SH的整合使用注解的方式 里面包括全部的jar包

    ssh三大框架整合s2sh整合总结(struts2.1.8-spring2.5-hibernate3.2)

    在S2SH整合中,Spring作为业务层的核心,管理Struts2中的Action实例,同时整合Hibernate,提供数据访问支持。 3. **Hibernate**:Hibernate是一个对象关系映射(ORM)框架,它简化了Java应用与数据库之间的交互。...

    S2SH整合 struts2 spring4 hibernate4

    在IT行业中,S2SH(Struts2、Spring4、Hibernate4)是一个经典的Java Web开发框架组合,用于构建高效、可扩展的企业级应用。本文将深入探讨这三个组件以及它们的整合过程。 首先,Struts2是Apache软件基金会的一个...

    Struts2 Spring2.5 Hibernate3.2 框架整合所有XML文件

    在S2SH整合中,Spring会管理Struts2的动作实例,包括依赖注入。比如,你可以在这里声明Action类,并配置其依赖: ```xml ``` 这样,Spring会自动为`UserAction`的`userService`属性注入对应的bean。 `...

    Struts2.1.6+Spring2.0+Hibernate3.2的jar包

    Struts2.1.6、Spring2.0和Hibernate3.2是三个经典的Java开源框架,它们被广泛用于构建企业级Web应用。这个压缩包包含了这三个框架整合开发所需的jar包,使得开发者能够在同一个项目中方便地集成这三大框架,实现MVC...

    s2sh整合 源码 struts2 hibernate spring

    Struts2、Hibernate和Spring是Java开发中三大主流框架,它们的整合被称为S2SH,是企业级Web应用开发的常见组合。这三个框架分别负责不同的职责:Struts2处理前端展示逻辑,Hibernate管理数据持久层,Spring则提供...

    s2sh struts2 Spring hibernate整合实例(附带所有jar包,及源码)

    5. **整合步骤**:在Struts2的Action中,通过Spring的Autowired注解注入需要的服务类,这些服务类通常会持有Hibernate的SessionFactory,从而完成DAO层的数据库操作。 6. **测试与运行**:在MyEclipse8.0环境下,将...

    struts2_spring2.5_hibernate3.2整合

    在s2sh整合中,Spring负责管理所有bean的生命周期,包括Struts2和Hibernate的组件。 3. **Hibernate3.2**:Hibernate是一个流行的对象关系映射(ORM)工具,它允许开发者用Java对象来操作数据库记录,而无需编写SQL...

    s2sh整合实例

    S2SH,全称为Struts2、Spring和Hibernate的整合,是Java Web开发中一种常见的框架组合,用于构建高效、可维护的Web应用程序。这三个框架分别负责不同的职责:Struts2作为MVC(模型-视图-控制器)框架处理请求和响应...

    struts2.1 + hibernate3.2+spring2.5整合视频

    Struts2.1、Hibernate3.2和Spring2.5是Java Web开发中经典的MVC框架集成,被誉为“S2SH”组合。这个整合视频教程旨在帮助开发者掌握这三大框架的协同工作,提升Web应用的开发效率和质量。 Struts2作为Action层框架...

    struts2.0+spring+hibernate使用例子

    Struts2.0、Spring和Hibernate是Java Web开发中非常重要的三个开源框架,它们共同构成了经典的"S2SH"架构。这个框架组合可以帮助开发者构建高效、模块化和可维护的Web应用程序。下面,我们将深入探讨这三个框架的...

    最新的S2SH整合:Spring4,Hibernate4,Struts2(源码)

    在IT行业中,S2SH框架整合是Web应用开发中一种常见的技术栈,它结合了Spring、Hibernate和Struts2三个强大的开源框架。本资源提供的"最新的S2SH整合:Spring4,Hibernate4,Struts2(源码)",旨在帮助开发者理解和实践...

    spring2.5+struts2.0+hibernate3.3整合

    本文将详细介绍如何将Spring 2.5、Struts2.0和Hibernate 3.3进行整合,并提供一个适合初学者的入门案例——s2sh-login。 Spring框架作为核心的依赖注入(DI)和面向切面编程(AOP)容器,负责管理应用程序的组件和...

    S2SH练习项目struts2 spring hibernate

    这是一个struts2 spring hibernate所构建的小练习项目,主要的功能就是添删改查 数据库是oracle。里面有建表语句,导入到myEclipse之后,在数据库建表插入语句(附带有sql语句),可直接运行、提供给初学者的一个小...

    struts2.2.3+spring2.5+hibernate3.2事务

    在S2SH(Struts2、Spring、Hibernate)架构中,Spring通常作为核心框架,负责IoC(Inversion of Control)和AOP(Aspect-Oriented Programming),包括事务的管理。开发者可以将Struts2的Action类注入到Spring容器中...

    一个struts2.0+spring2.0+hibernate3.1应用示例代码

    Struts2.0、Spring2.0和Hibernate3.1是Java Web开发中经典的三大框架组合,它们在构建企业级应用程序时发挥着重要作用。这个应用示例代码将演示如何将这三个框架有效地集成在一起,实现MVC(Model-View-Controller)...

    S2SH整合是需要的jar文件struts2.2+spring3+hibernate3.6.rar

    这个“S2SH整合是需要的jar文件struts2.2+spring3+hibernate3.6.rar”是一个压缩包,包含了进行S2SH整合时所需的关键库文件。以下是关于这三个框架及其整合的详细知识点: 1. **Struts2**:Struts2是一个基于MVC...

    S2SH(struts2+spring+hibernate)三大框架整合

    S2SH,即Struts2、Spring和Hibernate的整合,是Java Web开发中常见的三大框架集成,用于构建高效、模块化的应用系统。这三个框架分别负责不同的职责:Struts2处理MVC模式中的Controller部分,Spring提供了依赖注入和...

Global site tag (gtag.js) - Google Analytics