1.事务概念
1. 什么是事务
2. 事务特性
原子性
一致性
隔离性
持久性
3. 不考虑隔离性产生读问题
脏读
不可重复读
幻读
4. 解决读问题
设置隔离级别
Spring事务管理
1. spring事务管理的俩种方式
第一种 编程式事务管理(写代码,一般不用)
第二种 声明式事务管理(主要用)
(1)基于xml配置文件实现(也得会)
(2)基于注解方式实现(习惯用)
2. spring事务管理的api介绍
(1)spring针对不同的dao层框架,提供不同接口实现类
(2)事务操作首先都要配置事务的管理器
搭建转账环境
- 创建数据库表,添加数据
- 创建service和dao类,完成注入关系
<!-- 创建Service对象,在service中注入dao对象 -->
<bean id="userservice" class="com.ghw.c3p0.UserService">
<property name="userdao" ref="userdao"></property>
</bean>
<!-- 创建Dao对象,在dao中注入jdbctemplate对象 -->
<bean id="userdao" class="com.ghw.c3p0.UserDao">
<property name="jdbcTemplate" ref="jdbctemplate"></property>
</bean>
<!-- 创建jdbcTemplate对象,在jdbctemplate中注入dataSource对象 -->
<bean id="jdbctemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource" ref="dataSource"></property>
</bean>
(1)service层又叫业务逻辑层
(2)dao层,单纯对数据库操作层,在dao层不添加业务
(3)需求:李书豪给程宇轩转账1000元
- 李书豪少1000
- 程宇轩多1000