00:00
下面呢,我们来搞一个带副标签的标签,这个时候我们看见有个什么方法呀,叫set parent。哎,它可以把副标签的引用附进来。然后呢,我在当前标签里边,可以跟副标,可以跟副标签之间进行交互。我们来写一个哈。哎,带副标签的。Simple textport。Do,哎,好了,说在副标签意味意味着你你有什么呀,你得有一个副标签啊,那我于是我写一个吧,这个。F2,我写个3TAG吧,不是这个就tag复合箱。
01:01
再写一个标签。好了,一父一子哈,现在呢,副标圈里边啊,我来写一个属性归name。Get name把这个name呢,我可以给它返回,然后呢,我在set name就不写了,我直接内内来赋一个值,比方说复位这个值呢,是S硅谷写好啊,副标签什么也不干啊,使子标签自动运行get。Get be body.eb now the标签,呃,你就正常运行就可以了,但我们可以来打一个。
02:01
Out name加name,但需要注意的是什么呀?这是在副标签里面。副标加。标签处理器类里边有一个name OK,写完这个写完之后的话呢,我们再来看一个子标签了。好了,我有一个附有一个子哈,我们先把它刨起来,我们看它长什么样。嗯。Fact。Name parent。下个plus。CTRLC过来。
03:01
V,然后呢,副标签是有标签体的body content。好了,再来看一个子标签。那个。你。看,一个class子标签长成这样。嗯。CTRLC过来,然后呢子标签里面写一个OK content,这个的话呢,是个空吧,写完之后我们再我们在这块我们来用一下。At。艾特堆果三菜就这么一个效果,然后我想怎么样呢?我想让子标签把副标签那个name属性打印到页面上,注意看哈,说我们希望的是哎,子标签法副标加的负。
04:23
标签的name属性。打印到DP。一百二打二。副标签干什么呢?副标签啊,副副标签。附标签啊,我这么打印值name到控制台。是这么一个想法啊,好了,我们看part t,我是不是从控制台上打印了呀?
05:03
好了,然后呢,我让子标签运行,这这个时候需要注意,这个子标签应该是副标签的标签体吧。子标签是副标签的标签体,这个挺重要的,说呀哎,子标签乙负。标签的标签体存在这样好了,要是这样存在的话呢,我们再回到这个里边来。看哎标签体,那你就正常,你就正常输出吧。过来,那我这个里边我得干什么呀,第一个。得到副标签的。引用。
06:01
然后呢,获取副标签的name属性第三个。把name值打印到JSP页面。是就这么几个步骤,那第一个我如何来获取啊at parent访问的是什么?访问的是一个JP。看JP。花吧。他长成这样。好了,然后的话呢,我来获取这个name属性值怎么获取啊。是不是只有我指定的这个炮T才有这个内幕属性啊,所以说需要进行一个强转吧。
07:00
Tag tag等于。进行一个相转,然后呢,我得到name属性值。等于parent tag点,然后输出到页面上get。J p con。Get out,点输入到页面上来,我说。子标签输出name加name name是在哪呢?我是不是写死了呀?艾的堆故3W点故点。OK。跑一下看效果。
08:07
啊,有问题什么问题呢。哦,前面的问题。这个是我没转呢,刚才呀,因为这是一个,这是一个什么嘛,这是一个map嘛,我把这个map付给付给一个collection会有异常。这个有问题啊。大家看副标签输的值吧,标签数的值这样就可以了,哎,这就是有副标签的标签的开发方式,我们看一下哈,副标签正常开发副标签感受不到我有任何的子标签,就是副标签无法去引用那个子标签。
09:01
好了,而子标签可以得到副标签的引用。二。刷开发有副标签的标签,好了,这里边的话呢,有一些原则我们需要注意说副标签。感受不到。无法,无法获取指标。签的引用获取不着,然后说什么呢,说副标签啊。紧把。子标签作为标签体来使用好了。第二个我们需要说的是,子标签可以通过什么方法呢?
10:07
通过这个方法我来看,叫get。Current转过来这个方法呢,是什么呀?是从类啊,是这个接口里边实现的方法。过来看这吧。接口里边实现的方法叫什么呀,Simple。快点过来看一下。Bad parents的确是有这样一个方法,还有一个sad point,那说吧说。说哎。标签可以通过。Get的方法来获取副标加的引用,那这个我们要说一下哈,虚。
11:04
继承什么类呢?这个时候需要继承它simple textport。或自实现什么呀,Simple time接口。的方法。就是你没实现的话,搞不定具体是怎么搞的呢,具体是这么搞的,说是。弱什么呢?弱呃子标签的确有副标签,就是说我们在配置的时候啊,并配置不出来,你看这个时候我配置的时候不知道它有一个副标签,那如果确实是有的话,那个这个时候dip引擎。这引擎是谁呀?咱们看服务器吧,会把代表副标签的引用付给。
12:10
标签处理器,标签处理器具体是调用哪个方法呀。通过哪个方法?看这是不是通过这个,通过这个方法过去。哎,付给他好了,付给这个之后的话呢,我们这块我们需要有一个注意的地方,注意什么呢?说注意啊,诶附标签的类型是j p hi的这个类型,这个类型很有意思。CTRLC,你过来看。看过这个是不是这个空接口啊,大家想到过我定义这个空接口有什么意义呢?
13:04
你看。空接口子接口一个是simple tag,还有一个什么呀,还有一个tag,然后的话呢,在这两个基础上的话呢,我有一个空接口,它有什么意义呀。看这个它有啥意义啊。因为我们这个标签呢,目前分为两种,一种叫传统标签。诶,一种叫传统标签,还有一种叫简单标签,那我现在无论是哪一种标签的话,比方说我是一个传统标签,我的副标签有可能是一个传统标签,也有可能是一个简单标签吧。再说一遍啊,我当前标签的话呢,我是一个呃传统标签,那我的副标签有可能是一个传统标签,也有可能是一个简单标签吧,那反过来我当前标签是一个简单标签,它的副标签有可能是一个传统标签,也有可能是一个简单标签吧,那这个时候我就需要有一个类型,既能够代表传等标签,又能够代表简单标签,懂这个意思吧,所以说上面需要有一个呃这样的一个接口,一个负接口,这个的话呢,可以实现tag跟simple tag的一个统一,但这里边不需要去定义任何额外的方法。
14:36
说这个时候这个接口的目的就是来统一tag跟tag。说该接口。该接口是一个空接口什么,里边没有定义任何的方法和属性,但是来统一什么呀。
15:00
出来。孔一。Simple tag tag。Simple tag。和他是干这个事儿。这个是我们特别需要注意的一个地方。写这哈。哎,这是我们需要注意的一个地方,然后的话呢,我们只需要进行类型强转就可以了,比如说实际实际使用,实际使用啊,需要进行类型的强制。强制转换,OK,好了,然后我们再来,我们说在TD文件中。配置文件中有什么啊,没有为。
16:04
标签额外,呃。不需要为无需。为副标签,有额外的配置,有额外的配置。有额外对配置说指标上是什么呀。紫标签。是一个标签体,标签体是以吧,是以是以标签体的形式存在的的形式存在的,所以什么所以。副标加大。Body content。
17:00
Body content需要设置为script。需设置为。Script这就可以了,这样的话呢,我们刚才这个hello word呢,我们都说清楚了是吧,关于副标签的几点我们也搞明白了,好了,这个写完之后的话呢,我们来看一下这个,呃,在JSTL里边有这么一个标签。我们也需要自己写一个实现这么写的。C。处选择好了再看C问,当什么什么时候?当什么时候呢?我们来写一个啊,比方说我们写part,我减A值,如果这个值大于24,我们写一个换吧。大学比。
18:05
好,如果这个值要是大于20的话,我们写高中毕业。好了,否则。See otherwise for。高中。以下。关注一下吧。写完了相当于一个是是个什么呀,大家看这个see see otherwise,是不是有点if else if else那个味道啊,就是这个意思,我们先来看效果。雪刚。问号,Age等于25。高中以下。
19:02
C。点A啊写写错地方了吧,这是不是要写在里边啊。再看。大学毕业好了22。哎,哦,22又不对了,对吧。嗯。22的话,按我们想的话,应该是高中毕业吧,高中以下。嗯。回来,我来写一个。26,没毛病,大学毕业。22。22怎么能是一个高中以下呢?
20:01
宽容点,Age。是不是多了个空格,看见了吗?这个的毛病里边应该是一个布尔值,拔掉这个就好了。高中毕业吧,再写一个。11。高中以下这样的话呢,这个标签我们就实验完成了,这个时候我们需要注意一个什么呀,它有一个choose副标签,然后有问问跟otherwise,我们要探讨一下这个是如何进行实现的,我们要写这么一个标签,好了过来五要求。实现啊,你想一下怎么实现的呢。大家看啊看,比方说写一个25,这个25是不是既满足这个又满足这个,那我怎么知道,哎,我在满足他的情况下,底下这个就不用再写了呢,就底下这个就不用再进行判断执行了呢,我们说说思路吧,说开发几个标签,三个标签分别是兔子when和。
21:22
八格Y,好了,这是第一个。第一个需要说的。第二个学校说的是什么呢?其中。问,标签吗?有一个。类型的属性叫什么呀?叫case,就是我们知道了好了,第三。小没人看的话呢,也就是这样了是吧,再看的话,可能还有一个说兔子是when。
22:00
和。Otherwise的附表加,然后呢,这个when when otherwise有点有点讲究哈,说问在other。之前使用好了,看到的表面上看的就这么多,下面我们看的内部的哈,内部它是这样,大家想如果我这个A传到号是一个25的话,这个是不是真的。它也是真,那我凭什么就执行第一个,第二个就不执行了呢,凭什么呀。我应该有一个统一的开关吧,我说我如果有一个问,已经执行的后尾是不是都不执行了,是这个意思吧,如果我每个问都没执行的话,后面这是不是要执行啊,所以说,所以说应该这么说,说在。目标想谁呢?柱子中定义一个。
23:09
全局对吧,全局这个全局呢,实际上我们是相对于什么呀,我们是相对于这个紫标签而言的全局的。布尔类型的flag用于干什么呢?用于判断。标签。在满足条件的情况下,是否执行这么一个意思,那具体我们说说哈,说说来过来第一个若问若问的。Taste为true,且when副标签的flag也为true。
24:13
这怎么了,得直行。Wind的标签体,然后呢,同时把flag。设置为false,再来再来说,若这个为这个为false呢。喂。这怎么了,则不执行。标签能想明白吧,就是说这个说什么这个要false的话,说明我这个问是不是已经执行过一次了,后边就不执行了,那再来。
25:09
说呀。Flag为flag还是呢?哈,这个标签otherwise执行。这个家伙是不是在最底下呀,那这个没执行,就是说我到我都到这儿了是吧,这个flag还是处呢,说明问是不是一个也没执行啊,那我执行具体是执行标签体啊执行标签体。怎么说直行标桃体啊?正常输出,正常输出标签体的内容就这么搞。看见了吧,这就是兔子otherwise整个我们的要求。
26:02
啊,我首先需要开发这样的三个标签,然后呢,When有一个布尔类型的test,这我们已经知道了啊,Choose是问as otherwise的副标签,然后呢,我们再说一个来说问在as otherwise之前必须这样,然后说我怎么样能说,哎,比方说我这个A值是25的情况下,它执行它就不执行呢?我们只需要在副标签里边定义这样的一个全局的flag就可以,它的作用是判断子标签是否执行,那比方说对于问而言,这个牙物是真。同时还要看choose的flag是不是也是真,只有这个是真,Choose flag也是真的情况下执行好,那如果已经执行了,我就让副标签那个flag置为。Fourth。然后到下一个了,我发现这个条件还满足就满足了吧,但是刚才这个家伙是不是已经把那个flag是不是已经置为false了,那我就不执行了,好啊,一次到other otherwise到otherwise之后的话呢,我看诶otherwise,我看这个flag还是处呢,这说明这个问是不是没有一个执行的呀,那我于是我就执行otherwise,这就是我们整个的思路梳理一下,把这个完成一下。
27:27
写三个标签。兔子问。PA。里面有一个属性叫。默认值是处赛就不要了哈,啊赛要,因为我嘴里边需要干什么呀,需要给他这1BO吗?
28:08
Is flag,写完to。在干什么呀?此标签自己去执行吧,Get get book now OK go。下一个问。问,嗨,咋写?还有一个什么呀,布尔值吧。打K。然后。Tag。这怎么写啊?你不怎么看着这么。
29:04
这么写好。下一个,下一个怎么实现呢,说如果。Guest是针,然后呢,我需要得到后半格的一个引用吧。副官引用,直接来了哈,兔子。等于get进行,然后呢。我会得到或flag等于choose that.that is is right,如果这也是真的话,干什么呀,执行吧。Get get。
30:02
点,然后什么了。我需要使choose是force就完事了,OK,好,这个完事之后的话呢,还有一个什么,还有一个otherwise吧。同样的。Simple text support。然后呢?这个没有任何属性,直接读太阳就可以。怎么办呢?得到红标签的引用。然后if什么choose t.is flag执行呗。
31:07
She divorce now s。配置一下。Hi。嗯。Too。下一个兔子。下一个,下一个是name。TIgEr。
32:09
对,形体。然后呢?哦,这个问里边是不是有属性啊。
33:00
写完看效果。装F。艾硅谷。上班也跟着换了。应该就换换底下的呀,行吧,换换吧,啊把这去掉。这个吧。打个标记表示这是我们的啊。嗯。高中以下。
34:01
高中毕业。大于B。好了,我们再回来看一下我们的问的标签。如果这个标签里边我不把这个值上的话,会怎么样会怎么样,这个时候是不是我如果上面那个问满足的话,底下的问是不是也行啊。包括otherwise都会执行,就像那个Switch一样,我开了一个我没加没关就会导致都执行,你看我目前是26,大家看。是不是大学高中高中以下是不是都执行啊,都是这个问题,所以说把这个再改回来就可以了,行。
我来说两句