一、基础了解
首先观察目录
有一个输出语句
主类,有主页、业务类和xml文件就可以是最基础的项目
最后得到预期结果
二、编程式事务管理
导入代码的时候发现在上一节导入过了,观察了下代码大体框架真的就是一样的,后续再发现不对再进行补充
三、声明式事务管理
首先还是看目录
没有教程,我就习惯性从xml开始观察了
第一部分还是熟悉地连接数据库
第二部分的事务管理器
上图就是新内容第三部分
TransactionProxy:事务代理
暂且不管看不懂的第三个框
第一个框将地址跳转到了事务管理
想弄懂第二个框,先看提到的AddDAO文件
这里首先补充一下,设计a=0是为了先行制造异常事务判断是否运行成功
addUser方法中的user类中定义了变量以及封装方法
getJdbcTemplate我观察了所有文件也没发现对这个类的定义,回想之前的内容它是作为模板存在的;也没看到继承的父类JdbcDaoSupport在哪里,也许是优化了在导入包中?暂且不管,看他后面接的内容只用知道它是执行sql语句就可以了
那么xml文件中的意思就是指导AddDAO文件去找数据源执行sql语句
至于第四个框,参考提示,意思是让代理对象中只要以add开头的方法名必须运行在事务中
这个以add开头我猜测指的是id名,那也就是addDAO方法
还差最后一个文件
通过main关键词以及包名的提示知道这个是要运行的主函数
主要内容就是添加相关数值
做到这里我还存在疑问,我好像没看到是向哪张数据表中添加数据?
观察结果,是正常导入的,我还是不清楚原因,是因为只有这一张表吗?还是因为类user刚好和表名部分同名了?
对比编程式事务管理,我更喜欢编程式事务管理次次执行都有回响的感觉,会有提示是正常执行还是失败了
在注释之后,无法正常执行了,也就是说事务中执行方法还要靠这一串语句,而不单单只是起到筛选的作用
用时:两小时