Struts+Spring+Hibernate--SSH整合实例

Struts+Spring+Hibernate--SSH整合实例:

网 上虽然有很多 SSH 整 合的小例子,但很多程序都出现了不是这样,就是那样的错误。自己总结了一下,终于做出的 Struts+Spring+Hibernate 整 合的小例子,也是最基础的 SSH 实 例,虽然是小例子,但什么程序都是从基础的做起。如果你弄明白了这个小实例,相信你的 SSH 整合框架技术也会提高很 多。

       在 做本例前,需要熟悉对 StrutsHibernate 的反向工 程等的基本操作。

开发工具: MyEclipse+MySQL+Tomcat

说明:本实例是简单注册程序(只有 两个属性)

数据库脚本: user.sql

 

DROP TABLE IF EXISTS `user`;

CREATE TABLE `user` (

`Id` int(11) NOT NULL AUTO_INCREMENT,

`username` varchar(255) DEFAULT NULL,

`password` varchar(255) DEFAULT NULL,

PRIMARY KEY (`Id`)

) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;

 

开发步骤:

1 建立 Web 项目

   选择: Java EE 5.5

2 添加 Struts 支持(项目右键 à MyEclipse Struts Capabilities …

       选 择:

1Struts specification Struts 1.3

2Base package for 那 位 classesedu.syict.struts

3 添加 Spring 支持(项目右键 à MyEclipse Spring Capabilities …

       选 择:

1) Spring versionSpring 2.0

2) Select the libraries to add the buildpath

Spring 2.0 AOP Libraries

Spring 2.0 Core Libraries

Spring 2.0 Persistence Core Libraries

Spring 2.0 Persistence JDBC Libraries

Spring 2.0 Web Libraries

       3) JAR Library Installation

Copy checked Library contents to project folder TLDs always copied

       Next

4) Spring 配置文件 选择目录 FolderWebRoot/WEB-INF

Finish

4 添加 Hibernate 支持(项 目右键 à MyEclipse Hibernate Capabilities …

       选 择:

       1Hibernate SpecificationHibernate3.1

       2Select the libraries to ad to the buildpathHibernate 3.1 Core Libraries

3JAR Library InstallationCopy 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

       6Bean IddataSource

DB Driver :选择配 置好的 Hibernate 。 à Next

       7 ) 不建立 SessionFactory (不 选择 Create SessionFactory class?

       8Finish

数据库方面

       1 ) 建立包 edu.syict.pojo

Hibernate 反 向工程:

          选择下列内容:

Create POJO<>DB Table mapping information 复选框

                     Create a Hibernate mapping file 单 选框

                     Update Hibernate configuration with mapping resource location 复 选框

            Java Data ObjectPOJO<>DB Table )复选框   

            其 余的都不选择。 à Next          

Id Generatornative à Finish

 

       2 ) 新建接口: edu.syict.dao.UserDao.java ( 所在包: edu.syict.dao )

 

package edu.syict.dao;

import edu.syict.pojo.User;

public interface UserDao {

    public void save(User user);

}

       3 ) 建立 UserDao 接 口实现类 edu.syict.dao.impl.UserDaoImpl

       类 继承 HibernateDaoSupport , 接口继承 UserDao

 

package edu.syict.dao;

import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import edu.syict.pojo.User;

public class UserDaoImpl extends HibernateDaoSupport implements UserDao {

    public void save(User user) {

       try {

           this .getHibernateTemplate().saveOrUpdate(user);

       } catch (RuntimeException re){

           throw re;

       }

    }

}

建立 JSP 页面, Action

       1) 打 开 struts-config.xml 配 置文件:右键 new à Form,Action and JSP

       2) User caseregister

       Form ImplDynamic FormBean

       Propertiesusername password

       JSP : 选择 Create JSP form à Next

3) Action 默认就 可以了 à Finish

       4) 配 置 struts-config.xml 文 件,将 Struts 交 给 Spring 管 理

              a) 加入插件 (message-resources 标记下 )

 

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

    < set-property property = "contextConfigLocation"

               value = "/WEB-INF/applicationContext.xml" />

</ plug-in >

b) Action 类移交( message-resources 标 记上)

 

<controller processorClass="org.springframework.web.struts.DelegatingRequestProcessor"/>

       struts-config.xml 文 件 ( 全 部 )

       struts-config.xml 文 件 ( 全 部 )

 

<? xml version = "1.0" encoding = "UTF-8" ?>

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

 

< struts-config >

< form-beans >

    < form-bean name = "registerForm" type = "org.apache.struts.action.DynaActionForm" >

      < form-property name = "password" type = "java.lang.String" />

      < form-property name = "username" type = "java.lang.String" />

    </ form-bean >

</ form-beans >

 

< global-exceptions />

< global-forwards />

< action-mappings >

    < action

      attribute = "registerForm"

      input = "/form/register.jsp"

      name = "registerForm"

      path = "/register"

      scope = "request"

      type = "edu.syict.struts.action.RegisterAction" />

</ action-mappings >

< controller processorClass = "org.springframework.web.struts.DelegatingRequestProcessor" />

< message-resources parameter = "edu.syict.struts.ApplicationResources" />

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

    < set-property property = "contextConfigLocation"

               value = "/WEB-INF/applicationContext.xml" />

</ plug-in >   

</ struts-config >

5) register.jsp 页 面 (WebRoot/form/register.jsp)

 

<%@ page language = "java" pageEncoding = "UTF-8" %>

<%@ taglib uri = "http://struts.apache.org/tags-bean" prefix = "bean" %>

<%@ taglib uri = "http://struts.apache.org/tags-html" prefix = "html" %>

 

< html >

    < head >

       < title > 用户注册 </ title >

    </ head >

    < body >

    SSH 整合 < br >< hr >

    < h3 > 用户注册 </ h3 >

       < html:form action = "/register" >

           用户名: < html:text property = "username" />< html:errors property = "username" />< br />

           &nbsp;&nbsp;&nbsp;&nbsp; 码: < html:text property = "password" />< html:errors property = "password" />< br />           

           < html:submit value = " 注册 " /> &nbsp;&nbsp;&nbsp;&nbsp; < html:reset value = " 重置 " />

       </ html:form >

    </ body >

</ html >

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值