00:00
各位同学大家好,下面呢,我们继续来看这个resources资源操作,咱们看下一个内容,使用resource作为属性,那这个什么意思呢?给各位解释一下啊,大家注意啊,咱们之前呢,我们说的这个资源访问的就是各种的相关操作,那不管我们是用resource这个实现类还是用application它相关事类进行,这个时候呢,咱都要做件事情,都要在代码中写上你的资源的路径,那这个时候呢,有个缺陷,比如说我现在啊,我这个资源位置发生了变化,那咱是不是要改代码才能实现,比如说咱举个例子大家看啊,咱们刚才代码中,我们以这个为例,大家看这里边是不是要加上你资源这个路径,比如说你是硅谷还是什么C盘,还是什么其他位置,这个路径,当我这个位置发生变化,咱们代码是不是要跟着修改,所以它有这么一个缺陷,所以咱们在这里边还要。
01:01
一种更好的解决方式怎么做?就这种方式通过依赖注入实现,也就是说的通俗点啊,资源路径肯定需要,但是咱们不写到代码中,咱给它放到配置文件中,然后通过依赖注入方式注入,最终完成这个资源的访问,这是我们要做的事情,我再重复一遍啊,咱们之前的不管是用的实现类还是用contact来获取资源,咱们在代码中都需要写上你资源的位置,或者说资源的路径,这个时候呢,如果说资源位置发生了变化,咱肯定要改我们的代码才能实现,这么写并不方便,所以咱们要解决这种方式,那怎么做呢?我们的做法就是通过配置文件配置你资源路径,然后用依赖注入方式完成注入,这么写就更加的灵活,也就是资源所在的位置给它做了一个解耦合的过程,跟代码给它降低了它的耦合度,所以咱们现在通过依赖注入方式进行实现。也就。
02:04
就是啊,把result作为属性,通过注入方式注入到那里边,然后最终进行实现,那下面咱看一下这个该怎么去做,怎么用resource作为属性,通过依赖注入来访资源,咱们最终演示一下啊这个过程。那下面我来写一下。首先啊,我们在这里边,我们先建个包,咱们做个创建这个包呢,我给它起个名字,因为用result作为属性做这个注入过程,咱就叫这个D啊,就依赖注入,然后在里边怎么做,首先我们先建这么一个类。类里边就是完成这个注入过程啊,那我们写个类啊,这个类我起个名字就叫resource这个B。就是它了啊,Resource。然后在resource里怎么做呢?咱们加上一个属性就叫resource,比如resource,然后加上之后生成它的set方法啊,咱为了操作方便,把get set都给它生出来。
03:10
这是我们写到的,一会儿咱用set方法完成,这个就是相关的注入啊,我把set方法为了看着方便啊,拿到上面来。然后这个之后呢,在里边我们可以再写一些测试的方法,比如咱们加一个方法啊,来一个public,比如叫这个,呃,咱就叫这个pass,就是解析啊。然后在里边我们给他简单做个输出,用里边这个方法我们加上比如说。点上一个叫这个方法,然后咱们给他输出一下啊。我们看啊,就是现在我这里输出我们发现啊get好像没这个方法大咱看一下什么问题啊,Resource大家看这个应该导的不对啊,咱把给它改一下,应该导的不是这个包导错了,应该导的是里这个resource啊,刚才导包了,然后咱们调get方法,比如把这个文件名称做个输出啊,包括比如我在输入一个这个。
04:13
描述信息等等,所以现在这个类就完成了resource b,然后用set方法,咱们注入这个resource,这个之后下面呢,我们写一个render配置文件,我在里边编写一下,呃,这个文件呢,为了区分,咱就重新再建个新的文件,我在这个位置进行创建。我们叫这个B啊,就叫bins点叉L跟那个区分一下。然后创建之后,在里边把这个部分我们进行配置,那咱们配置一下啊,怎么配置呢?就刚才这个resource b,咱们创业对象,然后把resource作为属性注入,并且指定它的资源位置,这个位置咱在配置文件中进行配置。那咱们快速写下啊。
05:02
加上B。Class class里边加上它的路径。这个部分来给他拿过来,然后起个名字B。之后在里边加上它的属性,这个属性就是刚才咱们这个resource,然后result之后我们加上一个value啊value里边呢,就指定你那个文件的位置,咱是那个at硅谷点TT。那就直接啊读取这个文件了,我们看到啊,这里边应该有这个文件,那就读取它了。所以现在啊,咱们把这部分完成了,大家看这特点啊,把路径放到是配置文件中,做到我们这个既有合作过程,而不给它写到代码中,这个时候我要改的话,直接改配置文件就可以了,代码不需要发生变化,这是咱们写的配置,然后最后我们进行最终的测试,试一下这个最后结果。
06:01
咱们试一下啊。我在里边建一个测试类,就叫T的B。然后创建之后加上一个嫩方法,最终完成测试。然后在里边applicationt等于上一个加上你这个配置文件,我们是L啊,注意错,然后咱们用count里那个get b加上我们那个就是b.class得到它这个B项啊,咱就叫这个resource b。然后得到之后,我们调用里边这个方法,这个方法叫pass,这样的话就可以了,最终我们做个测试,试一下它的结果怎么样。咱们看啊,最终这是做了一个输出证明,咱这过程就成功了,所以说啊,以上咱就把这个作为演示,使用result作为属性,也就是说的通俗点,咱们通过注入方式,把我们的资源的位置不是写到代码中,而是放到配置文件中,降低了它的耦合度。
07:12
这个咱就演示到这里。
我来说两句