Spring (三)

1.1 Spring的事务管理

1.1.1事务

  • 事务:指的是逻辑上一组操作,要么全部成功,要么全部失败。
  • 事务特性:
    • 原子性:事务不可分割。
    • 一致性:事务执行前后,数据完整性保存一致。
    • 隔离性:一个事务执行的时候,不应该受到其他事务的打扰。
    • 持久性:一旦结束,事务就永久保存到数据库。
  • 如果不考虑隔离性,会出现如下问题:
    • 脏读:一个事务读到另一个事务没有提交的数据。
    • 不可重复读:一个事务读取到另一个事务已经提交的事务(update)。
    • 虚读:一个事务读取到另一个事务已经提交的事务(insert)
  • 事务的隔离级别:
    • 未提交读:以上情况都有可能发生。
    • 已提交读:可以避免脏读,但是不可重复读和虚读有可能发生的。
    • 可重复读:可以避免脏读和不可重复读,虚读有可能发生。
    • 串行:可以避免以上的所有情况

1.1.2Spring中的事务管理      

1.2 SSH框架的整合

时间: 2024-08-27 19:28:13

Spring (三)的相关文章

spring三种实例化bean的方式

1构造函数实例化 2静态工厂方法实例化 3实例工厂方法实例化 service接口: package service; public interface PersonService { public void save(); } PersonServiceBean: package service.impl; import service.PersonService; public class PersonServiceBean implements PersonService { public

Spring(三)——AOP

AOP全名为Aspect-Oriented Programming,意思是面向横切面编程,前边我们有过介绍   面向横切面编程AOP的理解 ,我们通过这种编程思想很容易的扩展我们的应用程序. 一,如何实现AOP编程思想呢?实现这种编程思想的一个重要手段就是代理模式或者说模仿代理模式的运用.尤其是其中动态代理模式,JDK提供的Proxy的使用,这个在前边也总结:Proxy代理模式的应用                       而这种动态代理是基于接口的,也就是说代理对象和目标对象实现了同一个接

Spring三 Bean的三种创建方式

创建Bean的三种方式在大多数情况下,Spring容器直接通过new关键字调用构造器来创建Bean实例,而class属性指定Bean实例的实现类,但这不是实例化Bean的唯一方法.实际上,Spring支持使用以下三种方式来创建Bean:(1)调用构造器创建Bean(2)调用静态工厂方法创建Bean(3)调用实例工厂方法创建Bean一 构造器创建Bean实例如果不采用构造注入,Spring底层会调用Bean类的无参数构造器来创建实例,因此该类必须要提供无参数的构造器,并且class属性的值就是该B

spring(三)----大概是最简单的面向切面了

面向切面编程,是spring的一大特点,可以说是spring最独特的特点了(个人认为). 记得当初学习面向切面编程的时候,可能是面向对象思想根深蒂固了,怎么也理解不了什么叫面向切面... 其实对于面向对象学得久的人,刚接触面向切面肯定很难理解,所以辅助记忆很重要.我刚开始记面向切面的时候是这么理解的: 首先,面向对象肯定都熟悉,有不熟悉面向对象的童鞋...  建议再去看看java基础..    然后,还是面相对象,有这么一个对象,需要在这个对象的某一部分增加业务逻辑(切入点),一般什么时候会有切

Spring —— 三种配置数据源的方式:spring内置、c3p0、dbcp

01.Spring内置数据源配置Class:DriverManagerDataSource全限定名:org.springframework.jdbc.datasource.DriverManagerDataSource不需要添加任何jar 02.apache的 dbcp数据源配置Class:BasicDataSource全限定名:org.apache.commons.dbcp.BasicDataSource需要添加:com.springsource.org.apache.commons.dbcp

Spring(三)Bean继续入门

一.Aware相关接口 对于应用程序来说,应该尽量减少对Sping Api的耦合程度,然而有些时候为了运用Spring所提供的一些功能,有必要让Bean了解Spring容器对其进行管理的细节信息,如让Bean知道在容器中是以那个名称被管理的,或者让Bean知道BeanFactory或者ApplicationContext的存在,也就是产让该Bean可以取得BeanFactory或者ApplicationContext的实例,如果Bean可以意识到这些对象,那么就可以在Bean的某些动作发生时,做

spring(三) spring事务操作

前面一篇博文讲解了什么是AOP.学会了写AOP的实现,但是并没有实际运用起来,这一篇博文就算是对AOP技术应用的进阶把,重点是事务的处理. --wh 一.jdbcTemplate 什么是JdbcTemplate? spring提供用于操作数据库模版,类似Dbutils,通俗点讲,我们操作数据库,spring也会帮我们提供一个操作数据库的工具供我们使用,而不用我们自己手动编写连接数据库,获取结果集等等操作,这个工具就是JdbcTemplate.跟Dbutils一样,想要使用JdbcTemplate

深入剖析Spring(三)——Bean的生命周期

对于普通的Java对象,当new的时候创建对象,当它没有任何引用的时候被垃圾回收机制回收.而由Spring IoC容器托管的对象,它们的生命周期完全由容器控制.Spring中每个Bean的生命周期如下: 1. 实例化Bean 对于BeanFactory容器,当客户向容器请求一个尚未初始化的bean时,或初始化bean的时候需要注入另一个尚未初始化的依赖时,容器就会调用createBean进行实例化. 对于ApplicationContext容器,当容器启动结束后,便实例化所有的bean. 容器通

Spring(三)AOP面向切面编程

原文链接:http://www.orlion.ga/205/ 一.AOP简介 1.AOP概念 参考文章:http://www.orlion.ml/57 2.AOP的产生 对于如下方法:     public class UserDAOImpl implements UserDAO{           public void saveUser(User user){      doSaveUser();      }     } 想在saveUser方法中执行保存用户之前和之后记录当前时间以求出