00:00
好,那我们刚才呢,咱们已经模拟了一个多数据源的环境,那下面呢,我们就来简单的进行一个测试。首先呢,咱们把这个测试力呢,然后把它给打开,然后呢,把我们所需要用到的组件来进行一个自动装配。User service,好,然后还有一个是product service啊行。Product service,好,那我们现在呢,咱们创建完成之后,然后大家再来看,咱们再来写一个测试方法,Public void叫做test,好啊,那我们的测试呢,非常简单,因为我们现在仅仅是用来测试多数据源的,那所以说呢,因为我们在user I p的实现类上呢,然后来添加了它所对应的数据源呢,然后是master,然后在我们的product service I PL上,咱们所设置的数据源是slave_一,那所以说我们只需要从两个数据源中查询不同的数据就可以啊,只要能查询出来,那说明我们当前的测试是没有问题的,对吧?
01:07
好,大家来看user service点什么方法,大家想一下,大家还记不记得我们之前在学习咱们的通用map和通用service的时候,咱们说过这个通用map中呢,然后查询的方法是以select开头的,而通用的service为了区分通用map中的方法是不是有一个不同的前缀,查询的方法都是以什么开头的?Get开头的,这个大家注意好,所以比如说我们现在就做一个非常简单的操作啊,通过ID来查询咱们的用户信息以及商品信息,所以说咱们直接用这个方法就行,好,然后下面咱们直接一个输出,然后再往下访问我们的product service.get by ID就可以啊。好,下面我们在这儿咱们来进行一个测试,大家来看看能不能查询出来数据啊。啊,应该是没问题的,所以说大家注意,在我们的多数据源中,首先大家要注意的就是一个配置问题,我们需要在这里面呢,来把我们的数据源都配置出来,然后再往下就是我们需要通过咱们的ADS这个注解来指定我们当前要操作的数据源,OK吧,好,那下面大家来看,那我们来找到咱们的,最后大家注意,这个是我们从master数据源中查询出来的用户信息,这个是我们从咱们的这个,嗯,这个SLAVE1所对应的数据源中查询出来的商品信息,没问题啊。
02:34
好,那有的同学可能会有一些疑问啊,比如说咱们的is deleted是用来设置咱们的逻辑删除的,然后一呢是什么意思?大家想想是不是应该是已删除状态呀?那为什么我们现在能查询到它呢?大家想,那是因为我们当前新创建的一个工程,在我们的user的实体类中,我们有没有通过注解来指定它是我们逻辑删除的这个属性,或者说逻辑删除的字段呢?并没有啊,所以说我们当前呢,是可以把所有的数据都查询出来的,这个大家注意。
03:07
好,那下面呢,我们来看一下咱们的笔记,大家看好,我们经过测试,我们可以从不同的数据源中来获取数据,然后大家再往下看,如果我们现在来实现的是读写分离的话。好,那我们现在能否通过咱们的多数据源来实现呢?可以啊,首先大家要知道读写分离,然后我们有主数据源,咱们也有从数据源,对吧?然后我们的写的操作是要作用于我们的主数据源上的,而我们的读的操作是需要从从数据源中来读的,所以说我们只需要把咱们的ADS这个注解,然后添加到相对应的类上就可以了,这个大家注意,那当然呢,因为是读写分离,那所以说有的时候咱们所操作的表可能是同一张表,比如说咱们操作的都是user,但是咱们的有主数据库,有从数据库,然后数据库中咱们的表都叫user,但是大家注意,那这个时候我们是不是有的表,咱们比如说主数据库中的user表,咱们实现的是写,而从数据库中的优德表,咱们实现的是读,那这个时候咱们的大家想想,那我们当前所要创建的这个service,以及咱们创建的map,是不是应该都是以。
04:21
User开头的user service user map,那这个时候怎么办呢?大家来看啊,好,咱们来找到我们my be plus的一个官网,咱们来找到多数据源,大家来看,然后咱们来找到我们的ADS这个注解,大家注意,你看这个注解是可以加到咱们的类上,也可以加到方法上的,那如果我们加到类上的话,那这个类中所有的方法将全部都来操作我们所指定的数据源,那如果咱们把这个注解加到咱们的方法上,那我们就可以专门来指定某一个方法所操作的数据源。这个大家能听懂吧,好,OK,这个啊,那行,那这个就是我们当前my be plus中所实现的一个多数源的功能。
我来说两句