注:本系列文章部分内容来自王健老师编写ssh整合开发教程

使用Spring的AOP进行项目的事务管理,已经成为非常多企业的首先,Spring做为优秀的开源项目,其在数据库连接、事务管理方面的优势已经显现,当然后期我们还会使用Hibernate进行数据操作。但仍不能丢弃Spring作为中间层的重要意义。



第一步:书写DDL(数据定义语言)语句,创建mysql数据库和表格,例如以下图-1所看到的:

提示:在ssh项目下,新建一个ssh.sql文件。当中存放全部的建库、建表语句。



图-1

第二步:创建一个资源文件,位于WEB-INF/conf文件夹下,输入数据库的url等信息例如以下图-2所看到的:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveHV6aGVuZ19qYXZh/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">、

图-2

第三步:将连接mysql的jar文件复制到WEB-INF/lib文件夹下,因为连接数据路。以后使用AOP进行事务方面的控制。所以须要将下面几个包复制到WEB-INF/lib文件夹下。



图-3

第四步:在applicationContext.xml中配置数据库的连接例如以下图-4所看到的:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveHV6aGVuZ19qYXZh/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

图-4

第五步:公布项目,并启动程序,假设能正常启动,说明数据库连接成功,调试程序,直到正常启动。

第六步:改动OneDaoImpl.java类,运行数据查询。改动后的代码例如以下:



图-5

第七步:在applicationContext.xml中,给OneDaoImple注入DataSource属性例如以下图-6所看到的:



图-6

第八步:公布程序。并測试登录,输入例如以下:



图-7

第九步:配置数据库事务,配置的高级部分。假设可以掌握可成为领域的行家:

提示:在上面的配置过程其中,尽管已经能够正常操作数据库进行增删改查操作。可是当用户发生异常时,不能使用户的操作回滚到原始状态,即没有事务,所以为了保证用户操作的原子性,应该给我们的数据加入事务。

9.1、添加applicationContext.xml的文档类型头定义,以支持aop的配置例如以下图-8所看到的:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveHV6aGVuZ19qYXZh/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

图-8

提示:为了防止出错,能够使用下面文档类型头直接覆盖applicationContext.xml的文档类型头:(建议直接拷贝)

<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd">



9.2、配置事务控制。在applicationContext.xml中添加下面配置:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveHV6aGVuZ19qYXZh/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

图-9

提示:1、依照1~3的顺序书写。

 2、绿色双向箭头为引用关系

 3、椭圆的圈中,execution(* com..*Service.*(..))是指对com包中的。全部的以Service结尾的接口其中的全部方法。不管接受什么样的參数,返回什么样的数据类型,都进行事务控制。



第十步:公布项目,并启动,假设启动不成功应该检查配置文件是否正确,直到能正常启动为止。



总结:到眼下为止,Spring已经整合完成,下一步的工作例如以下:

1、添加一个功能,查询显示全部用户。

2、整合Hibernate,并相同完毕查询显示全部用户的功能。

3、添加删除、添加、改动用户的功能(使用Hibernate)。



源码下载地址:

http://download.csdn.net/detail/u014548782/7216361



Struts2+Spring+Hibernate step by step 04 整合Spring之二,从数据库验证username和password的更多相关文章

  1. spring+hibernate+jpa+Druid的配置文件,spring整合Druid

    spring+hibernate+jpa+Druid的配置文件 spring+hibernate+jpa+Druid的完整配置 spring+hibernate+jpa+Druid的数据源配置 spr ...

  2. Struts2,Spring, Hibernate三大框架SSH的整合步骤

    整合步骤 创建web工程 引入相应的jar包 整合spring和hibernate框架 编写实体类pojo和hbm.xml文件 编写bean-base.xml文件 <!-- 1) 连接池实例 - ...

  3. 搭建Spring + SpringMVC + Mybatis框架之三(整合Spring、Mybatis和Spring MVC)

    整合Spring和SpringMVC 之前已经整合了spring和mybatis,现在在此基础上整合SSM. 项目目录: 思路:SpringMVC的配置文件独立,然后在web.xml中配置整合. (1 ...

  4. Struts2+Spring+Hibernate step by step 03 整合Spring之中的一个(在DAO层验证username和password)

    注:该系列文章部分内容来自王健老师编写SSH整合开发教程 目的:通过Spring创建数据库的连接,并通过Spring进行事务管理. 第一步:将Spring的包拷贝至当前项目的lib文件夹下,例如以下图 ...

  5. 【Java EE 学习 53】【Spring学习第五天】【Spring整合Hibernate】【Spring整合Hibernate、Struts2】【问题:整合hibernate之后事务不能回滚】

    一.Spring整合Hibernate 1.如果一个DAO 类继承了HibernateDaoSupport,只需要在spring配置文件中注入SessionFactory就可以了:如果一个DAO类没有 ...

  6. SSH三大框架的搭建整合(struts2+spring+hibernate)(转)

    原文地址:http://blog.csdn.net/kyle0349/article/details/51751913  尊重原创,请访问原文地址 SSH说的上是javaweb经典框架,不能说100% ...

  7. Struts+Spring+Hibernate项目的启动线程

    在Java Web项目中,经常要在项目开始运行时启动一个线程,每隔一定的时间就运行一定的代码,比如扫描数据库的变化等等.要实现这个功能,可以现在web.xml文件中定义一个Listener,然后在这个 ...

  8. 《SSM框架搭建》三.整合spring web

    感谢学习http://blog.csdn.net/zhshulin/article/details/37956105#,还是修改了spring到最新的版本和接口开发示例 根据前一篇日志,已经有了myb ...

  9. Struts+Spring+Hibernate处理Lob(Blob,Clob)

    在使用struts+spring+hibernate的开发中,有些时候用户会有数据库存储文件的需求,在数据库中一般会采用Blob字段或Clob字段来存储二进制图片.流媒体或文件.现就将在实际开发中遇到 ...

随机推荐

  1. ntdsutil 清理弃用服务器-----待验证

    例子是这样的: 一个森林里有两个树,mm.com和cc.com,分别有dc www.mm.com和vdc.cc.com, cc.com域的控制器崩溃,不想恢复,要彻底删除这个域,由于vdc.cc.co ...

  2. Eclipse截取android报错log

    Eclipse截取android报错log: 1.前提条件:已安装eclipse 2. LogCat界面设置: Logcat是Android 编程中一个命令行工具,可以用于得到程序的 log 信息,可 ...

  3. 爆炸几何之 CCPC网络赛 I - The Designer (笛卡尔定理)

    本文版权归BobHuang和博客园共有,不得转载.如想转载,请联系作者,并注明出处.   Nowadays, little hahahaha got a problem from his teache ...

  4. 刷题总结——奇怪的游戏(scoi2012)

    题目: 题目描述 Blinker 最近喜欢上一个奇怪的游戏.这个游戏在一个 N*M  的棋盘上玩,每个格子有一个数.每次 Blinker  会选择两个相邻的格子,并使这两个数都加上 1.现在 Blin ...

  5. leetcode 94 中序遍历模板

    /**递归的写法 * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * Tre ...

  6. bzoj [Scoi2016]美味

    [Scoi2016]美味 Time Limit: 30 Sec  Memory Limit: 256 MBSubmit: 721  Solved: 391[Submit][Status][Discus ...

  7. NAND FLASH 物理结构分析

    转自:http://blog.51cto.com/hardywang/2053915 NAND Flash是一种非易失性随机访问存储介质,基于浮栅(Floating Gate)晶体管设计,通过浮栅来锁 ...

  8. 空指针问题(java.lang.NullPointerException)

    在Java中对值为null的指针调用任何方法,就会引发空指针异常(java.lang.NullPointerException).空指针异常绝对是Java中最难查找和调试的一种异常,你永远无法得到任何 ...

  9. 接口自动化测试框架--http请求的get、post方法的实现

    已知两种方法.一种是通过httpclient实现(貌似很简单,以后看一下),一种是以下方法: Client实现: package common; import com.alibaba.fastjson ...

  10. 洛谷 P 1330 封锁阳光大学

    题目描述 曹是一只爱刷街的老曹,暑假期间,他每天都欢快地在阳光大学的校园里刷街.河蟹看到欢快的曹,感到不爽.河蟹决定封锁阳光大学,不让曹刷街. 阳光大学的校园是一张由N个点构成的无向图,N个点之间由M ...