`
阅读更多

Spring2.5.3+Hibernate3.2+Struts2.0.11整合

 

 

只有Struts2基础(初学Hibernate/Spring第三天就想着整合),有些地方不是很懂,看了网上大部分的例子、blog,百分百的MyEclipse插件,本人不太习惯使用MyEclipse,主要是Eclipse使用的时间比较长,使用MyEclipse6.0.1时(第一次用)比如你要输入.getHibernateTemplate()时,输入点时就有提示,但是当我输入点后面的字母出错时,只能返回到输入点之前才按点“.”可以提示,按ALT+/也不会出现,是不是我不知道快捷键,或是其它的方式,总之我在Eclipse中输入一半错误时按ALT+/可以又出来提示,虽然不是特依赖提示功能,但是用起来还是不爽,毕竟每天都在使用它,哪位要是知道的话烦请告诉一声bulktree@126.com

仅仅看了两天的官方文档就写了这个整合的新闻发布系统,感觉蛮好的,是个好的开始 come on!


以下是一个新闻发布系统的登录模块:(两天看文档,一夜写成的,不是很完善,仅仅实现基本的增删查改功能,主要是整合练习)


首先配置三个框架,有人说要是使用MyEclipse自动生成会有顺序Spring->Hibernate->Struts,太依赖工具不是本人的习惯,这些是后话。
开发工具Eclipse J2EE Developer Tomcat6.0.13 Mysql 6.0
新建Dynamic Web Project

拷贝工程所需的jar包到WEB-INF/lib

<!--[if gte vml 1]> <![endif]-->

数据库创建脚本

DROPTABLE context;

CREATETABLE context

(

    id VARCHAR(32) NOTNULLPRIMARYKEY,

    title VARCHAR(100),

    times DATETIME,

    content VARCHAR(500),

    author VARCHAR(50),

    click INT,

    typeVARCHAR(50)

);

DROPTABLEuser;

CREATETABLEuser

(

    uid VARCHAR(50) NOTNULLPRIMARYKEY,

    uname VARCHAR(50),

    password VARCHAR(50) NOTNULL

);

web.xml中配置Struts2Spring

<filter>

       <filter-name>Struts2</filter-name>

       <filter-class>

           org.apache.struts2.dispatcher.FilterDispatcher

       </filter-class>

    </filter>

    <filter>

       <filter-name>encodingFilter</filter-name>

       <filter-class>

           org.springframework.web.filter.CharacterEncodingFilter

       </filter-class>

       <init-param>

           <param-name>encodingFilter</param-name>

           <param-value>UTF-8</param-value>

       </init-param>

    </filter>

    <filter-mapping>

       <filter-name>Struts2</filter-name>

       <url-pattern>/*</url-pattern>

    </filter-mapping>

    <listener>

       <listener-class>

           org.springframework.web.context.ContextLoaderListener

       </listener-class>

    </listener>

项目中我使用的是Tomcat数据源配置如下,如果你不使用Tomcat数据源也可以在下面的配置文件中配置:

<Context docBase="news-SSH2" path="/news-SSH2" reloadable="true" source="org.eclipse.jst.jee.server:news-SSH2">

              <Resource auth="Container" driverClassName="com.mysql.jdbc.Driver" maxActive="100" maxIdle="30" maxWait="10000" name="jdbc/news" password="1234" type="javax.sql.DataSource" url="jdbc:mysql://localhost:3306/news?autoReconnect=true" username="root"/>

           </Context>

也在在配置applicationContext.xml文件中配置数据源

<!-- 定义数据源Bean,使用C3P0数据源实现 -->

    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">

       <!-- 指定连接数据库的驱动 -->

       <property name="driverClass" value="com.mysql.jdbc.Driver"/>

       <!-- 指定连接数据库的URL -->

       <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/news"/>

       <!-- 指定连接数据库的用户名 -->

       <property name="user" value="root"/>

       <!-- 指定连接数据库的密码 -->

       <property name="password" value="1234"/>

       <!-- 指定连接数据库连接池的最大连接数 -->

       <property name="maxPoolSize" value="20"/>

       <!-- 指定连接数据库连接池的最小连接数 -->

       <property name="minPoolSize" value="1"/>

       <!-- 指定连接数据库连接池的初始化连接数 -->

       <property name="initialPoolSize" value="1"/>

       <!-- 指定连接数据库连接池的连接的最大空闲时间 -->

       <property name="maxIdleTime" value="20"/>

   </bean>

applicationContext.xml中配置sessionFactory

<bean id="dataSource"

        class="org.springframework.jndi.JndiObjectFactoryBean">

       <property name="jndiName" value="java:comp/env/jdbc/news"></property>

    </bean>

    <!-- 管理Hibernate -->

    <bean id="sessionFactory"

        class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">

       <property name="dataSource" ref="dataSource"></property>

       <property name="mappingResources">

           <list>

              <value>org/bulktree/ssh2/news/vo/User.hbm.xml</value>

              <value>org/bulktree/ssh2/news/vo/News.hbm.xml</value>

           </list>

       </property>

       <property name="hibernateProperties">

           <value>

              hibernate.dialect=org.hibernate.dialect.MySQLDialect

           </value>

       </property>

    </bean>


3.
开始编码:
我们必须明确Spring框架的体系结构,新建以下几个包

<!--[if gte vml 1]> <![endif]-->

User.java

package org.bulktree.ssh2.news.vo;

publicclass User {

    private String uid;

    private String uname;

    private String password;

    public String getUid() {

       returnuid;

    }

    Getter/setter’’’’’’’’’’’

    publicvoid setPassword(String password) {

       this.password = password;

    }

}

User类同包下即org.bulktree.ssh2.news.vo新建User.hbm.xml文件

<?xml version="1.0"?>

<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"

                                   "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping package="org.bulktree.ssh2.news.vo">

 <class name="User" table="user">

 <id column="uid" name="uid" type="string">

   <generator class="assigned"/>

 </id>

 <property column="uname" name="uname" type="string"/>

分享到:
评论

相关推荐

    Spring2.5.3+Hibernate3.2+Struts2.0.11整合.

    这个整合项目中的文档,如"Spring2.5+Hibernate3.2+Struts2.0+jotm2.0集成配置.doc"、"spring 2.0 + hibernate3.2 + struts 2.0 开放配置.pdf"和"Spring2.5.3+Hibernate3.2+Struts2.0.11整合.pdf"应该详细介绍了这些...

    Spring2.5.3+Struts2.0.11.1+Hibernate3.2.6整合备忘 (转载)

    Spring2.5.3+Struts2.0.11.1+Hibernate3.2.6整合备忘 (转载)

    ssh2(struts2+spring2.5+hibernate3.3+ajax)带进度条文件上传(封装成标签)

    标题 "ssh2(struts2+spring2.5+hibernate3.3+ajax)带进度条文件上传(封装成标签)" 涉及到的是一个基于Java Web的项目,利用了Struts2、Spring2.5、Hibernate3.3和Ajax技术,实现了文件上传并带有进度条显示的功能...

    java dubbo admin 2.5.3 + jdk1.7

    java dubbo admin 2.5.3 + jdk 1.7 亲试 好用 2.5.3 提示不让上传,上传的是2.5.5 , 5.5 好像不好用 ,就不要下载了 原来用的jdk1.8 提示以下错误,貌似是版本问题 24-Feb-2018 10:15:07.213 SEVERE [localhost-...

    cas-2.5.3 + mysql单点登录

    在“cas-2.5.3 + mysql单点登录”这个项目中,我们将使用CAS 2.5.3版本与MySQL数据库配合,构建一个单点登录系统。 首先,我们需要理解单点登录的概念。单点登录允许用户在一个应用系统中登录后,无需再次登录就能...

    spring2.5.3、2.5.4源码

    4. **数据访问集成**:Spring 支持多种数据访问技术,包括 JDBC、Hibernate、JPA 等,提供了统一的编程模型,简化了数据访问层的开发。 5. **Web 框架**:Spring MVC 是一个强大的 Web 应用开发框架,提供了模型-...

    Pillow-2.5.3-py3.2-win32.egg

    py依赖包

    Pillow-2.5.3-py3.2-win-amd64.egg

    py依赖包

    简单配置 shiro + spring +springMVC+hibernate简单框架

    SpringMVC整合Shiro,Shiro是一个强大易用的Java安全框架,提供了认证、授权、加密和会话管理等功能。 配置applicationContext-shiro.xml 1. 配置authorizingRealm 2.Shiro Filter 设置拦截的内容和登录页面和...

    Struts_Spring_Hibernate_整合教程

    ### Struts_Spring_Hibernate 整合教程 #### 1. SSH整合理念 在软件开发过程中,特别是构建大型Web应用程序时,使用多个框架进行整合是非常常见的做法。这种整合不仅可以提高开发效率,还能确保系统的可扩展性和...

    spring-framework-2.5.3.zip

    在数据访问层,Spring 2.5.3加强了对JDBC、Hibernate和iBatis等持久化技术的支持。特别是,对于ORM(对象关系映射)框架,Spring提供了更强大的整合,使得在不同ORM框架之间切换变得更加便捷。 在Web层,Spring MVC...

    基于Java Spring Boot +Mysql 实现的健身房管理系统毕业设计

    web 框架:Spring Boot 2.5.3 数据库框架:MyBatis 数据库:MySQL 项目构建工具:Maven 模板引擎:Thymeleaf 6.开发环境 IDE:IDEA 2021.2 JDK:1.8 数据库:MySQL 8.0.25 【资源声明】:本资源作为“参考资料”而...

    Spring+mybatis+dubbo整合源代码及jar包

    通过Spring_Mybatis_Dubbo_Jars.zip和Spring_Mybatis_Dubbo2.zip这两个压缩包,你可以获取到整合所需的所有依赖包和源代码,从而快速搭建起这个框架。这将帮助开发者更快地理解并掌握这三大框架的协同工作方式,提高...

    飞鱼知识变现小程序2.5.3源码 小程序功能模块.zip

    微信小程序 飞鱼知识变现小程序2.5.3 前端+后端 模块/小程序更新动态: 问答模块:付费咨询功能、旁听分成功能、会员功能、三级分销 课程模块: 音频课程、视频课程、支持付费、支持免费、三级分销、会员功能 资料...

    spring4 jackson2.5.3.jar 包

    Spring 4.x.x版本引入了对JSON处理的强大支持,而Jackson 2.5.3则是Jackson库的一个具体版本,用于实现高效的JSON序列化和反序列化。下面将详细阐述这两个技术在协同工作时的关键知识点。 首先,Jackson是Java中...

    spring-web-2.5.3.jar

    spring-web-2.5.3.jar

    飞鱼知识变现小程序2.5.3前后端+三级分销+问答模块+课程模块等带有使用指南.txt

    飞鱼知识变现小程序2.5.3前后端+三级分销+问答模块+课程模块等带有使用指南.txt

    Spring MVC4.3.5+MyBatis3.4.2+Apache Shiro1.3.2整合开发高仿小米商城的后台用户管理系统

    分布式服务框架:Dubbo 2.5.3 接口测试框架:Swagger2 2.6.1 工具类:Apache Commons、Jackson 2.2、fastjson 1.2.20 2、前端 JS框架:Jquery 表格插件:Bootstrap Table 表单验证插件:BootstrapValidator 日期选择...

    spring+dubbo所需要的jar包

    (1)commons-logging-...(7)dubbo-2.5.3.jar (8)javassist-3.18.0-GA.jar (9)log4j-1.2.17.jar (10)netty-3.2.5.Final.jar (11)slf4j-api-1.7.12.jar (12)zkclient-0.1.jar  (13)zookeeper-3.4.13.jar

Global site tag (gtag.js) - Google Analytics