00:00
各位同学大家好,刚才呢,咱们完成了事五中相关属性的设置,分别设置了只读超时回滚策略,隔离级别以及传播行为,那我们下面呢,看下一个内容,大家注意啊,我刚才的操作中呢,虽然说咱们叫基于注解的生命式事务管理,但是你发现我们是不是也写到了配置文件?我现在想做件事情做什么?我想实现全注解开发,就是不依赖配置文件,都是用注解方式进行实现,那咱们最后把这个来做一下,也是用注解替代一下我们的配置文件,那咱们看这个该怎么去做。这个思路呢,咱之前提到过啊,怎么替代配置文件怎么做,咱们是不是见过配置类啊,然后通过配置类来替代配置文件,那我下面给大家写一下,首先啊,我在这个TX里边,咱们建个包,这个包就叫conig,然后在里边呢,创建一个然解guration,代表它是一个配置类,通过配置类我们来替代这个配置文件。
01:19
然后写完之后怎么做,咱们把配置文件打开啊,大家看里边第一部分是不是组件扫描,那我们对应的注解用这个叫comment,加上我们那个包的扫描规则,咱们的包是这个,我把这个直接复制过来。这是我们写的这部分,然后写上之后注意啊,因为现在我们加事物,所以加事物的话呢,我们要加一个注解,这个注解我写一下叫unable transition。它就表示开启事物。大家看这个词啊,Unable是不是就开启表示开启事务管理。
02:02
这个必须要加上这个注解,然后加上之后呢,我们把里面的内容在里边进行相关的配置,咱通过配置类进行实现,首先第一部分大家看我们是不是new了,这个对象就是标注一连接池的数据源,那咱把它我们来做个操作。我在里边写一下啊,我们加上一个叫at b。就是创建对象在此文中进行管理。然后加上我们加上这个叫source,起个名字就叫get。Source。然后在里边呢,咱们创建德鲁一连接的这个对象,我写一下啊,就是德鲁连接S。等于上一个it source,然后向里边来设置它的这些值,咱之前写过,我就快速设一下啊,第一个驱动的名称,这驱动的我就从里边咱就直接分过来了,感觉就是这些值啊,驱动就这个。
03:10
把它拿过来,然后咱们继续设置。第二部分设置我们那个用户名啊,用户名我们就是root。然后第三个设置这个密码,我的密码也是root,包括还有一个那就是数据库那个地址URL。地址我从里边复制过来,也就是这个地址。所以现在这些都完成设置,然后完成之后,最后呢,咱们把source做一个退。现在把这部分就完成了,比如对应我们里边的这部分来用配置类进行了替代,然后之后再来看啊,里边有这个JBC,包括有这个事务管理里都注入这个source,然后把这两部分快速完成,然后这是个注解的部分啊,现在给都就这部分,你可以理解为它就是用这个可以说做了一个替代。
04:07
然后咱们继续来写啊,下面写那个DBC的部分,咱们加上一个bin啊,其实B里边有一个名字,你可以加上,比如我们叫。然后下面我们写一下啊,Table JD bc等于get这JDBC。汤里头。啊,复制一下,然后里边上这个。注入这个数,然后加上之里我们写的具体内容啊,咱们上一就是D。等于上一个JDBC,然后咱们向里边来set它这个data source数据源啊,给它set进去,最终我们做一个。
05:09
蕊退,就是把它最后吞下。然后存之后大家看啊,这里报了一个错,什么错呢?他告诉我们啊,说这个不能注入,就是我们现在呢,你看在配置文件中,在C板中还要设管理器中是是要注入,而我在配置文件中已经完成了这个创建,我这里边是不是又创建一次,所以它提示我们说这过程中,这里边你看啊,说有多于一个这个类型的这个对象,所以他就不知道该找哪个大咱怎么做,大家看下配置文件先给它注掉,要不然它会有冲突,因为它里面会自动把你这个对象给你完成注入,那我现在把配置文件我先给它就是注释掉,为了咱们能看到这个效果啊,先给它注掉。包括这两部分也给它先注掉。
06:02
这些啊,先都给它注释掉。然后咱们看现在是没问题了,这就完成了DDBC,然后完成之后我们再写下一个,下一个呢,就是这个事物管理器,我们加上啊,就是public。这个应该就是source。写下这个应该是,然后咱们起个名字get transition。在里边呢,也加上这个,因为它也需要把这个进行注入。然后加上之后,咱们同样就是这个对象。我们来一下啊,这个对象。等于new这个。对象,然后咱们向里边来这个source,最终把这对象我们做一个。
07:05
就是它,所以现在啊,这一部分我们就完成了,就是咱们用这个配置类替代了配置文件。把这一部分我们就做了一个替代。这些啊,给它住掉,为了避免干扰我们。然后这个之后咱们最后呢,做一个简单的测试,试一下这个效果。这个测试啊,我就单独写个类,我们来测试一下啊,我就叫T的这个a no。然后在里边加个方法,这个方法呢,我就从课件中直接复制了啊,就是一个简单的一个方法,咱们把它拿过来,然后咱们简单做个测试。首先加上一个单元测试的方法,咱们还是用我们原始方式application上一个叫notation con cont应该记得啊,就是注解方式,这个过程加上配置类的class,咱们是con,然后得到我们这个B项,就是不control。
08:08
得到之后,我们调用里边这个方法。咱们调一下啊,就这个checkout呃,这个方法需要有个数组,我把这部分咱直接拿过来。就是他。然后把这个进来,咱们做一个测试。试一下这个效果啊。不开DS加个一,然后最终我们执行一下,看一下效果是否正确。等他执行。然后执行之后报的呢,还是刚才那个错误啊,就还是之前那个错误,应该没有太大区别啊,跟之前一样。然后咱们啊看一下就是里边这个最终的结果。啊,因为现在我们这里边应该还是之前那个那种,应该没有发生变化,还是这个样子啊。所以现在我们就完成这个全注解开发。
09:02
也就是到这个里呢,咱们就完成了基于注解方式进行声明式事务管理,所以大家把这个要重点掌握。
我来说两句