一、DAO
DAO相当于一个接口连接数据库
在xml文件中,配置数据源、定义模板、定义事务管理器,完成这三项后一并注入TransactionExample中
数据源就是数据库,事务管理器也是围绕数据库进行
(配置数据源的内容查看第二点中的xml文件,两者相同)
TransactionExample是一个实体类,我们把其中代码分为两部分观察
第一部分:在其中定义并获取数据源、模板以及事务管理器
重难点在第二部分
首先还是和数据源进行连接
执行对表的插入操作
尝试插入数据,如果成功执行显示“数据添加成功"
如果失败,捕捉错误原因并进行显示
观察主类,定义注解器是什么文件,获取的容器对象(getbean)是什么,并且执行其中操作,也就是上文中的实体类第二部分
在正确创建对应数据库数据表后提示如上错误
因为我创建数据表时对sex的数据设立是char(2),更改一下
然后又错误了,愿意如上图的a作为分母不能为0,再更改一下
得到正确结果
数据库中结果不是理想的两数据各一个,可能是之前错误导致的,总而言之也算是成功做出结果
把数据删除之后再插入了一次
二、JdbcTemplate
理解了第一大点中的这里就很好理解了,新定义了JdbcTemplate让代码更简单
成功添加
三、Spring与MyBatis的整合
目录如图
首先观察mapper包中的内容
应该是定义操作方法以及用xml文件来记录方法内容,通过id进行对应
注意,CategoryMapper类是被定义为接口的
以及存疑的地方是count方法没有被对应,它本身是被定义为方法了吗,统计了什么东西呢?
@Override的作用:
再来看一下这个最初的xml文件
最后观察测试类
不理解的地方在于test注解有什么用,为什么有两个?
观察结果
为什么会这样呢,new category应该和数据99在一起才对,还是我之前提到的数据顺序问题
用时:三小时