注:本系列文章部分内容来自王健老师编写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. 二分查找与 bisect 模块

    Python 的列表(list)内部实现是一个数组,也就是一个线性表.在列表中查找元素可以使用 list.index() 方法,其时间复杂度为O(n).对于大数据量,则可以用二分查找进行优化.二分查找 ...

  2. 七、docker基本命令

    Docker 基本命令 docker的基本命令 docker version :查看docker的版本号,包括客户端.服务端.依赖的Go等 [root@centos7 ~]# docker versi ...

  3. Python常用操作符

    Python常用操作符 1.成员关系操作符in 显示的数字前面填充'0'代替空格 6.转义字符 符号 含义 \' 单引号\" 双引号\a 发出系统响铃声\b 退格符\n 换行符\t 横向制表 ...

  4. PHP 获取文件名和扩展名的方法

    dirname(path) path: 代表你的文件路径,必须为绝对路径,可以使用__FILE__, 表示列出当前文件的绝对路径,包含文件名 函数会返回当前文件的上一级路径,也就是除了文件名称的路径 ...

  5. HDU 4426 Palindromic Substring

    Palindromic Substring Time Limit: 10000ms Memory Limit: 65536KB This problem will be judged on HDU. ...

  6. Linux硬件配置信息

      在网上找了N久,发现了一篇不错的文档,转载一下: 1.查看机器所有硬件信息: dmidecode |more dmesg |more 这2个命令出来的信息都非常多,所以建议后面使用"|m ...

  7. BZOJ 1086 [SCOI2005]王室联邦 ——DFS

    手把手教你树分块系列. 只需要记录一个栈,如果等于B的情况就弹栈,令省会为当前节点. 然后把待分块的序列不断上传即可. 考虑到有可能弹出不是自身节点的子树节点,所以记录一下当前的栈底. DFS即可 # ...

  8. ajax同步导致ajax上面的代码不执行?

    js代码:环境:IE11要求:点击一个按钮后,页面xxx的地方立即显示"开始处理...",直到ajax处理结束后,xxx内容才更新为新的处理结果:点击事件执行代码如下:xxx.in ...

  9. 插头DP--URAL1519Formula 1

    去年的老朋友.挺怀念的,回来看看. $n \leq 12,m \leq 12$,$n*m$的01矩形,问在0中走路的欧拉回路数.答案保证longlong范围. 先设计插头:左右括号和空插头:然后分3* ...

  10. MongoDB_java连接MongoDB

    java程序连接单机版的mongodb: 参考:http://www.runoob.com/mongodb/mongodb-java.html https://www.yiibai.com/mongo ...