Struts2+Spring+Hibernate step by step 04 整合Spring之二,从数据库验证username和password
注:本系列文章部分内容来自王健老师编写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的更多相关文章
- spring+hibernate+jpa+Druid的配置文件,spring整合Druid
spring+hibernate+jpa+Druid的配置文件 spring+hibernate+jpa+Druid的完整配置 spring+hibernate+jpa+Druid的数据源配置 spr ...
- Struts2,Spring, Hibernate三大框架SSH的整合步骤
整合步骤 创建web工程 引入相应的jar包 整合spring和hibernate框架 编写实体类pojo和hbm.xml文件 编写bean-base.xml文件 <!-- 1) 连接池实例 - ...
- 搭建Spring + SpringMVC + Mybatis框架之三(整合Spring、Mybatis和Spring MVC)
整合Spring和SpringMVC 之前已经整合了spring和mybatis,现在在此基础上整合SSM. 项目目录: 思路:SpringMVC的配置文件独立,然后在web.xml中配置整合. (1 ...
- Struts2+Spring+Hibernate step by step 03 整合Spring之中的一个(在DAO层验证username和password)
注:该系列文章部分内容来自王健老师编写SSH整合开发教程 目的:通过Spring创建数据库的连接,并通过Spring进行事务管理. 第一步:将Spring的包拷贝至当前项目的lib文件夹下,例如以下图 ...
- 【Java EE 学习 53】【Spring学习第五天】【Spring整合Hibernate】【Spring整合Hibernate、Struts2】【问题:整合hibernate之后事务不能回滚】
一.Spring整合Hibernate 1.如果一个DAO 类继承了HibernateDaoSupport,只需要在spring配置文件中注入SessionFactory就可以了:如果一个DAO类没有 ...
- SSH三大框架的搭建整合(struts2+spring+hibernate)(转)
原文地址:http://blog.csdn.net/kyle0349/article/details/51751913 尊重原创,请访问原文地址 SSH说的上是javaweb经典框架,不能说100% ...
- Struts+Spring+Hibernate项目的启动线程
在Java Web项目中,经常要在项目开始运行时启动一个线程,每隔一定的时间就运行一定的代码,比如扫描数据库的变化等等.要实现这个功能,可以现在web.xml文件中定义一个Listener,然后在这个 ...
- 《SSM框架搭建》三.整合spring web
感谢学习http://blog.csdn.net/zhshulin/article/details/37956105#,还是修改了spring到最新的版本和接口开发示例 根据前一篇日志,已经有了myb ...
- Struts+Spring+Hibernate处理Lob(Blob,Clob)
在使用struts+spring+hibernate的开发中,有些时候用户会有数据库存储文件的需求,在数据库中一般会采用Blob字段或Clob字段来存储二进制图片.流媒体或文件.现就将在实际开发中遇到 ...
随机推荐
- Leetcode 396.旋转函数
旋转函数 给定一个长度为 n 的整数数组 A . 假设 Bk 是数组 A 顺时针旋转 k 个位置后的数组,我们定义 A 的"旋转函数" F 为: F(k) = 0 * Bk[0] ...
- Codeforces Round #415 (Div. 2) 翻车啦
A. Straight «A» time limit per test 1 second memory limit per test 256 megabytes input standard inpu ...
- 【软考5】解释型 or 编译型
导读:在上篇博客中,我们了解到,目前的编码语言经过不断的发展,已经经历了机器语言--汇编语言--高级语言的过程.虽然我们的编码语言在不停的升级,但作为计算机来说,它始终是一个只能理解0和1构成的机器语 ...
- 【C#】重写和重载的区别
导读:学习C#的时候,其实没想那么多的.就想着把视频看完,把例子做一下就好了,其实真心不懂那些玩意儿是什么,就好像是又回到了学VB的时候.可是,边上师哥压榨我这本就不聪明的脑袋瓜,问了我好多问题,于是 ...
- PTA 09-排序3 Insertion or Heap Sort (25分)
题目地址 https://pta.patest.cn/pta/test/16/exam/4/question/676 5-14 Insertion or Heap Sort (25分) Accor ...
- 【Luogu】P1144最短路计数(BFS)
题目链接 此题使用BFS记录最短路的条数.思路如下:因为是无权无向图,所以只要被BFS到就是最短路径.因此可以记录该点的最短路和最短路的条数:如果点y还没被访问过,则记录dis[y],同时令ans[y ...
- Bzoj2007 [Noi2010]海拔(平面图最短路)
2007: [Noi2010]海拔 Time Limit: 20 Sec Memory Limit: 552 MBSubmit: 2742 Solved: 1318[Submit][Status] ...
- Ceph纠删码编码机制
1 Ceph简述 Ceph是一种性能优越,可靠性和可扩展性良好的统一的分布式云存储系统,提供对象存储.块存储.文件存储三种存储服务.Ceph文件系统中不区分节点中心,在理论上可以实现系统规模的无限扩展 ...
- 【Codeforces Round #503 (Div. 2)】
A:https://www.cnblogs.com/myx12345/p/9843198.html B:https://www.cnblogs.com/myx12345/p/9843245.html ...
- hdu 4952
Number Transformation Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Ot ...