00:00
好,那我们刚才呢,咱们是讲了这个为map类型的属性进行赋值。那下面呢,那我们的依赖注入呢,还有一种比较简单的方式,它叫做P命名空间,也就是说我们现在需要用到一个新的约束,然后我们才能使用这种方式,那这种方式咱们用的并不是标签来为属性赋值,而是用的我们bin标签里面的一些属性来为各个属性赋值,大家来看一下啊,比如说我们在这咱们再来设置一个B。它的ID呢,咱们叫做student,该six了对不对?好,然后class呢,咱们是等于student,然后下面大家来看,那这个时候我们当前要使用什么属性呢?大家注意是P开头的属性叫P冒号。然后但是这个东西呢,它需要有我们的约束的支持,我们才能够使用,大家看,在这就有这个提示,我们直接通过alt加enter就可以将它所对应的约束,然后导入进来,大家看啊,然后咱们直接alt加enter,然后我们回到咱们最上面,大家看一下,然后在这是不是就多了一个P的约束,OK吧,好啊。
01:11
行,那这个时候呢,我们再来看咱们当前的这个并标签,然后比如说我们在这给他换一个行,然后咱们在下面来写,然后P冒号之后,大家会发现这里面的属性呢,就有很多。比如说P冒号sid,然后下面还有一个P冒号sid-ref,大家会发现咱们的每一个为咱们的每一个要操作的属性,要赋值的属性,对应的咱们的P冒号开头的属性都有两个,比如说P冒号class-rfp冒号class对吧?那这是什么意思?如果我们当前咱们的属性呢,是一个字面量类型,那我们就可以直接用不带ref的这个属性来赋值,而如果我们当前咱们要赋值的属性是类类型的,那我们就可以加上杠REF来引用当前IOC容器中的某一个病的ID来为属性赋值,OK吧?
02:08
比如说咱们进行一个简单的测试。然后P冒号sid,然后咱们写个1005,然后这个P冒号内,咱们给它设置一个叫做小名。然后再往下,然后拼冒号,这个班级咱们就不设置了啊,因为班级里面呢,然后咱们的这个里面这个班级咱们只有一个,就是这个class one。可拉之外,然后在这儿呢,对吧,因为这个班级里面有学生,那我们当前是配置的学生的对象,你学生里面有班级,班级里面又有学生,对吧,然后这样的话,咱们这个就可能会形成一个圈,然后但是呢,大家注意这个其实如果大家认真去看的话,应该是没有问题的,因为咱们当前咱们的这个学生啊,他只有student one student two,还有student three。是这样的啊好,然后如果说要是我们当前这个学生里面有班级,班级里面又有学生,学生里面又有班级的话,那这个时候他是会给我们报一个错的。
03:09
然后这个大家注意,那所以说咱们在这就不不给这个class扶持了,比如说我们现在给谁扶持,叫做teacher map。咱们通过P冒号提map-ref来为当前这个学生所对应的老师的map集合来复一下值就OK了,啊行,下面呢,我们来进行测试,然后我们在这咱们来获取student six。然后我们下面咱们来执行一下,大家来看啊,好,那我们没有赋值的这些属性,那它的值都是那默认值,然后我们现在咱们是不是赋值的属性有sid,有s name,还有就是我们当前这个老师的map即可大家看一下啊,那这个方式呢,这种依赖注入的方式也是可以的,只不过就是咱们以后用的不多。大家在用的时候,你一定要注意,我们必须得有一个P命名空间,也就是我们当前所对应的约束。
04:06
如果说没有这个约束的话,咱们是用不了的,还有就是大家要注意咱们当前咱们在是怎么是通过什么方式来为属性赋值的,是通过并标签里面的属性来为当前student中的各个属性赋值的,这个大家一定要看好啊。还有咱们的每一个属性呢,它都有对应的两个属性,一个是不带ref的,一个是带ref的,什么意思。如果不带ref的是给字面量类型的属性赋值,而如果带ref的是给咱们的类类型属性类类型的属性去引用某一个B的ID的,OK吧,好啊,实际上这是咱们的P命名空间。
我来说两句