00:00
好,咱们继续啊,呃,咱们把这个标签的常见的讲几个啊,标签标签常见的啊讲几个。来上节课,咱们说一下这个if标签,接下来呢,看一看这个啊叫CTO,这个CTO呢,它其实是模拟的啊。这边我说一下这个啊,就是模拟的if else if else if else模拟的是这个。所以这边呢,写什么呢?写say when就行了啊,然后say when就可以了,来say when就可以了,来再来一个C什么otherwise。就是还是有一个分支执行,整个就结束了,只要其中一个分支执行就结束了啊,如果其他条件都不成立的话,就会走什么。
01:01
Else嘛是吧,这边呢,我我举个例子啊,比如说举个什么例子,例子不好不好找啊点什么。A啊,如果是大于。小于吧,啊小于五。这是属于什么婴幼儿是吧?婴幼儿啊,输出吧啊。嗯,婴幼儿啊,随便年龄嘛,是吧,再来一个Dollar什么什么para.age小于比如说18啊,这都属于什么少年叫少年嘛是吧,来再来,再来一个叫什么派点age啊,小于这个,比如说这个35的啊随便写吧,青年是吧,其他老年吧啊,老点早的是吧,随随随便写吧,啊是这回事就行了,你看一看吧,啊大概看一下,嗯,这个例子呢,就是简单举个例子啊,你看看是这么回事就行了,这边呢,我看一下啊,嗯,得传age吧,得传一个age啊。
02:14
嗯,这边呢,咱们传一个A等于四,嗯是不行啊,你说传一个,比如说25,嗯,传一个36老年了。行吧,是这回事就行了,这个能理解吧,那还要说一个事啊,就是这几个标签必须这样嵌套啊,以下三个标签对吧?啊,以下三个标签必须啊这样嵌套啊才能使用,不能散了啊,不能把问套到外边。必须是choose里边高when啊,When下边有什么otherwise这种关系,它模拟了if else if else if else if else test后面可以跟EL表达式啊,是这样。
03:01
好了,再来一个重点啊,循环一个重点吧,是吧。循环for each啊,这是一个重点内容,用的最多了。啊,用这个是最多的行吧,咱们一起看一下啊。呃,这边呢,我们写上,呃。Say for each行了,然后呢,我在这边呢,写上一个item啊,别写item了,我先我先写个简单的吧,啊,Begin in啊,Skype,嗯,变量对吧,那从几开始啊。从一开始到多少结束啊,到十不长几啊一变量,哎,行了来到了,哎嗯来行了啊。
04:05
刷新。一二三四五六七八九十嘛,为什么呀。那怎么实现呢?来把这个代码翻译成Java代码,将以上的标签翻译成什么Java代码怎么翻译?嗯,什么负循环I等于零,I小I等于一,I小于等于10I加加,然后呢,输出了。不对吧。你想的太少了。你觉得直接把I就输出了啊,EL表达式只能从某个范围对象中取数据,这个你忘了吗?
05:01
你A变量。这东西是不是。得找个位置存一下呀,这个存谁干的呀?不是咱啊,阿帕奇写的,他写了一个page context,点什么set trip,存了一个什么东西,I逗号I,明白什么意思吧,接下来才轮到你呢。整个这个代码,我现在写的这个东西。这个东西其实就是这个。和这个。你这句话不能忘了啊。然后接下来大家知道在这个这个括号里边写的这个东西,这这这都是属于谁写的呀,我们。我们写这句话吗?怎么写?三块摆末等于配置C点什么get是吧?谁呀?那它翻译成ER,表达式是这样吗?
06:04
是吧,你也可以写配置什么stop点。行吧,来刷。一样不一样,完全相同。啊,听见了吗?这个你你所以说你说这个重要吗。这也太重要了。这个。啊,这个配contest。必须得存进去,大家知道写这个标签其实执行的是哪个类,来,你点过去for each,你会发现底层for each执行是哪个类,是这个类和这个类吧,这个类so tag吗?是这意思吧,大家看好了啊,这个for t的这个标签你写上去。你写上这个,呃呃,你写上for之后,它底层会执现这个类,其实在这个类里面干了什么。在这个类里边干了什么,是不是写一个负循环,然后呢,每循环系四是不是把这个值存到了配置里边。
07:06
接下来我们是不是用一表示取出来的?所以你想这波程序谁写的,阿帕奇这波程序谁写的,我们,那么我们跟阿帕奇交互的话,是不是得有一个范围对象在这起作用,他肯定得存进去我们才能取嘛,存进我们才能用EL给它这取嘛,你要是不存进去我怎么取啊,没法取。所以在这儿是有这么一个关系的,其实严格意义上讲,这个代码和这个代码才是一样的。其实也不也不也不一定啊,这边其实是不是更严格一些啊,考点什么,那样的话怎么办。什么也不输出吧,其他情况输出什么是这个值吧,其实严格意义上讲是这个啊,等于这个。严格意义上讲,这个和这个是一样的。来,我们再刷新一下啊一样。是吧?所以捋捋啊,这是什么?这是起点吧,这是结束吧,这是什么不长对吗?
08:03
这个是个什么东西啊,这个其实充当了两个角色啊。既是这个变量的名字,又是存进去的名字,这个A和这个A一样不一样。是不是一样的呀啊。那你到了是吧,大块开始大块结束,你这个挨着谁呀。哎,其实就是它。跟他没关系吧。你如果这是ABC的话,那你想这是不是ABC啊。哎,啊,这样。理解。来,我们刷一下来。嗯,没问题啊。我们继续看这个分意啊,继续看。呃,我看一个什么呢?我看这么一个东西吧,咱们经常是这种情况比较多,EPE11吧,用一个emp吧,好了,用完之后呢,大家想一想,现在我们把这个EE导进来啊,一一呢去调一些set的方法,点site e number写上111,写上e.s name写上张三,然后在这把它复制,给它贴过来,贴过来给它改一改一二对象改成2213对象改成三,改成三,接下来这个改一改222啊这个叫李四,接下来呢,我在这写上什么呀,写上333,写上王五吧,好了,接下来呢,我们有一个粒子的集合,里边存一个emp吧,叫EP list啊new一个every list里边存一个什么emp吧,好了,接下来呢,我们把这个呢导一下,然后把这。
09:56
不能导一下,然后把这个request叫set什么切的话,是不是把这个e list是不是放进去好,这个大家能看懂吗。
10:05
创对象创对象创对象,然后把list集合调用I的方法把谁放进去一一的嗯,写上三个啊,一二对象,一三对象都放进去吗?然后是不是把历史的机额又存到铝筷子的范围中了,接下来。要求用EL表达式把这个集合取出来,然后取出集合中的每一个元素进行电力,像这种情况我们用的是最多的c for each item far far status啊来我们说一下这几个变量啊,首先item这个属性,Item属性可以接收EL表达式啊,可以接收表达式,表达式啊可以接受E表达式,It属性可以接收EL表达式啊呃,类型可以。
11:00
可以是什么呢?可以是数组或者什么集合,明白吧,所以说这个地方呢,它可以写EL表达式,并且是一个数组或者是什么集合,那么这个位置该写什么呀。哎,是他吧,到了大括号开始单号就贴过来。这就是那个集合了,明白吧,接下来这到底是啥呢?哎,这个Y代表啥意思?Y表示集合中的什么?元素或者代表集成的元素啊,代表集,你还记得这个号循环吗?这是什么东西啊,这个是那个离历的集合吗?这个是代表那个集中的每个元素吗?哎,那这那这是那个例子的集合呢,这个是不是代表集合中的每个元素啊,好叫emp吧,行吧,接下来继续。
12:00
这个是什么,我可以先不看,我就看这两个就行了,那么大家想想这个循环里面怎么怎么写,写什么。是不是高的叫emp,这把这个拿过来放到这点什么学过吗?是不是可以取这个属性加个顿号吧,Dollar怎么着E点什么E来换行,是这样换行吗?这循环吗?是吧,刷一下。其实严格意义上讲,它是什么东西啊?你能通过EL表达式把这个emb取出来,这说明什么?这说明E有没有存到配置content里边。就是说大家大家能不能把这个勾变成Java代码,Java代码是怎么写,以上改变成Java代码怎么写,For循环em be list吧怎么写的。
13:17
Page contact.set什么attribute,说那个什么E逗号E吧,然后接下来才轮到谁了,轮到我们同学写了吧,上这这些程序都是谁写的,都是阿帕奇写的,接下来你是不是把这取出来啊,怎么取的?是不是page contest调用它的get啊,吹BU的这个方法是不是取了个E啊,那不是取,那但是我们取的是这个e number吧,所以这个时候它其实更强大啊,这边的话咱们写一个什么emp是吧,然后干什么了,强转了点什么get,什么e number是不是后来加了个顿号啊,然后把这个复制一下啊,接过来这个地方改成什么name吧,然后加个BR对吧?啊,这个对上了,这个代码和这个代码改成一模一样。
14:06
看见这个E和这个E了吗?取啊。是吧?存进去了,所以还是你把这个配置卡那个很很有用这个。咱们现在主要是直接用了啊,我说过了,除了这个内置的之外,还可以自定义呢。你自定义标签的时候,你肯定得用到谁这个。配的。因为这个范围是最小的,化肥资源是最小的啊E。存进去,取出来。取出来之后点get,取出来之后点get,然后换行就行了。啊,就是这样,这俩一样不,我们可以加一个什么,加个横线试试来刷新。这俩是不是一样的呀,一样的啊,以后别这样写了,没人这么写了啊,现在高级了C了。
15:01
直接后面写什么集合,集合里边什么元素啊,直接点就出来了。这这么做。这就是循环了嘛,代替了,另外呢,你发现没有啊,后边还有一个东西叫什么one that,这样我随便写吧。行吧,随便写了之后呢,我在这边加一个Dollar,嗯,加上去之后呢,哎,发现这个随便写的东西里面有个抗的属性。这是新的内容啊,大家以前没有接触过的,来试试刷新,嗯,123。很有意思吧,哎,1234是序号。其实啊,这个是个什么,这个one status是个什么东西啊。它这个属性是是一个是指向了什么对象,指向了啊,指向了一个状态对象,一个状态对象。
16:00
状态对象啊,都有一个什么属性,抗的属性。啊,抗的属性的值是什么,是序号,所以这个你最好要专业一些啊,你这是写成什么emp叫什么。Status,那这边的话呢,应该是EP status点什么。就是说我直接告诉你底层的实现了啊,这个你要扒代码的话,你想一想,这个是不是底层的一定是个Java对象,这个直线那个Java对象,它里边是不是一定有个方法叫get count。那点看了吗。是吧,我现在告诉你,它里边有个属性叫vas letter vas that这个里边这个东西指向了一个对象,一个对象里边有个属性叫什么看。点该点该count,你我告诉你直接用,你拿来用就行了啊,把它放到这点count行了,这个名是随意的,你愿意怎么起名就怎么起名就行了,但是这个属性名不能随便写。
17:02
明白吧,这是个序号,你发现了,这是个序号,123。我们这个序号要用的啊,所以呢,这个属性要注意。行了,那这样的话,咱们这个标签说的差不多了,一个是什么if,一个是什么choose when otherwise,还有一个是什么for each,再看一个啊。我再看再扩展一个啊,扩展扩展啊。嗯,这个呢,我看一下有个叫save for tokens。这个跟什么?这个跟什么,这边还有个旺,这是什么东西,嗯。来看看啊,哎,看好了啊,这个我是这样写的,嗯,我不是正好好像,嗯,今天上午的时候,我好像在这个外b.SL文件里面是不是配了一个信息啊。
18:05
这个信息是这个信息吧,我想拿这个字块怎么拿。我想拿下边这个字符串怎么拿?是不是拿这个通过这个name拿呀,今天上午说学过一个东西,怎么怎么怎么做来着,当了怎么着。Para。点是这样吗?好,那就相相当于是不是在这有一个字符串,而这个字符串是不是就是这个字符串,而这个字符串中间什么隔开的逗号吧,所以我现在把这个逗号写到哪,写到这。行吧,这边呢,我就写一个,我就写一个ipi吧,然后Dollar怎么着I pip之后呢,加一个换行行吧。我们看看什么什么情况啊。这个很好用。
19:04
哎,这个串是什么串啊,这个串。是这个串吧,我把这个串拿过来啊,放到这一关了。好了。这个是吧。来,把这个串放过来了。放到这儿。来刷一下。行不行啊,可以吧,是不是这样大家更能接受是吧。我把这块放过来,给了个逗号。然后我取IP。就能取出来东西,你你觉得它底层做了个什么操作呀,切割有一个方法叫it,它按照逗号是不是割开了,割开之后呢,这个IP是不是代表这个集合里边的它将来其实这是个数组吧。它把它变成数组了,这个IP就相当于什么,就相当于数组中的每个元素嘛,哎。
20:02
其实你也可以把这个Java代码写一写,它Java代码是怎么做的?所以这边你不要写死,哎,我们就借助一个什么,我们借助一个配置文件怎么写的。dollar.is。以逗号方式分割嘛,是吧,来刷一下。嗯,行吧,这种方式大家要掌握啊,要掌握一下。行,一共就这么几个吧,啊,Token for tokens,还有一个叫for each,还有一个,哎,注意啊,如果你想在JP里面快速切割字符块的话,你可以采用这种方式。啊,快速切割字符串,你可以采用这种方式切割,并且它你不用你自己切,你只要配上去,配上去,然后呢,你按照什么切,然后你把变量拿过来,它就给你切了。能理解吧,啊,所以这边呢,它不但是切完了,它还循环呢。
21:05
是不是循环一下啊,拿出一个值吧,循环一下拿出一个值啊,所以呢,把这个也看一看吧,啊行。好了,那这样的话,咱们又完结一个啊,又完结一个啊,一个是EL表达式,还有一个是JSTL,这个JSTL呢,我说一下啊,其实还多着呢。这个其实是不是只是这个配置文件里面的东西啊,而且这个配置文件东西是不是也没讲完,就讲了这么几个吧,讲了这么几个啊,行了,这个以后的话基本上就够用了啊,嗯,够用了,好,咱们来看一看什么自定义函数啊,看一下函数库,函数库其实是属于JSP的一部分啊。来我们看一下,嗯嗯,咱们的函数啊,嗯,这边我加上一个注释吧,来这边一啊。
22:11
嗯,函数啊是对谁的,是对EL表达式的补充。函数啊,是对一表达式的补充。这边可能理解不了是吧。函数是对EL表达式的补充函数啊,是属于什么JSTL的一部分,对应的配置文件啊,对应的配置文件是什么?是standard standard的点包中的什么fn.tld文件啊。对应的配置文件是这个是这个包中的fn.trd函数呢是对E表达式的补充函数,是属于JSTL的一部分。
23:07
然后对应的配置文件呢,是这个包下的这个配置文件啊,来继续函数也是代替什么呢?嗯,函数。联合什么EL表达式啊,也是代替JST中的Java代码的啊,三函数分什么呢?分内置函数和什么自定义函数,好,我说一下啊。我们这两个都要掌握。啊,这两个都要掌握啊,这两个都需要掌握,内置的怎么用自定义,如何自定义,行了来继续啊,我们看一看内置函数。或者内啊这样吧,内置或者函数啊,函数的使用步骤,内置函数吧,写上内置函数的使用步骤啊首先第一步还是干什么呀,你肯定得导什么,导炸包吧,导入炸包啊导入炸包谁呀叫standard叫什么JSTL点赞还有一个叫standard的点赞吧啊来第二步是什么。
24:24
第二步就是什么使用t Li指令啊,导入函数库吧,导入函数库啊,函数库非常简单,这个啊大家看了就知道了,来,怎么写在这,嗯,Sorry吧,Take个吧,写上take个Li吧啊写上之后呢,后边写practice,后边再写个UI吧,是不是一模一样,只不过这个位置要写个函数,哪个是函数?Functions这个functions这个呢,一般呢,它的名字都叫FN啊,我说过不是必须的啊,来点过去看一看,它对应的配置文件是这个吗?这个配置文件大家看这是一个函数对吗?
25:12
来我对这个函数进行一个描述啊,第三步是什么?在需要使用函数的位置吧,使用即可吧,位置使用即可啊呃,来第五个啊呃,函数详解啊,函数详解贴过来来写一下子,这是什么东西啊。嗯,这是对函数的什么函数描述吧,这个呢,这是不是函数名啊,这是什么。函数对应的类吧,这是什么?这是函数对应的类中需要执行的方法。这是什么例子啊?
26:04
这是例子。你就这么简单。第一步导包,第二步使用t lab导进来,第三步用就行了。怎么用?首先我们先看一下函数,这是这个函数的描述,这是函数的名字,这是函数对应的类,而这个是函数,最终其实需要是这个函数在调的时候,我们一定会调这个类中的这个方法。这是不是方法呀,这个方法是不是反回不类型方法是叫cond吧,是不是两个参数吗?是吧,好了,那么接下来大家想一想怎么怎么做,怎么用那个用一下啊到了。怎么写?你看人家都给出例子了。FN为什么是FN?因为这叫什么FNFN后面跟什么冒号,冒号啊,冒号上跟什么。
27:02
跟函数的名字,函数名字拿回来之后,后边跟什么?跟括号,这个括号里面跟十参,大家看这个方法需要两个参数,都是string类型,不是用逗号隔开吗?所以左边呢是一个,右边是一个字符串,所以这边我写上去这是个什么?比如说这是一个hello。hello.hello word.java然后点Java,诶什么意思。这是啥意思啊?是这个吗?所以LT是小于号吗?大家知道这个NBST是空格,你知道是吧?那这个是小于号你知道吗?这代表小于号吧,这代表小于号啊,其实你看一看啊,人家说的很清楚,这个函数在用的时候。它返回布尔类型,所以这个函数可以用在一组标签的什么。
28:05
T的属性上。这个if标签是不是有个T的属性,T的属性是不是只能跟不玩类型,那为什么可以把它放到这,因为这个函数执行结构返回什么不玩类型,所以你看就可以把这放。这个例子你应该能看明白吧,啊,但是用的时候跟这个有关系吗?没有啊,没有关系,跟这个没有关系,跟这个没有关系,来这个都删掉,这个全删了啊,这个都删掉没有关系,跟他没关系啊,这掉了打括号。用的是这样用就行了,咋了,大块开始大块结束,好我问你函数在用的时候有一个特点啊,要和EL表达式怎么用函数就怎么用啊。EL表达式。表达式啊,怎么用函数就怎么用。大家看清楚啊,如果你写个高符号大括大括号结束的话,你这再加一个FN的话,实际上就找到这个FN对吗?找到FN就找到这个了吗?找到类就就找到配置文件了吗?找到配置文件之后,你看contains就能找到谁找到这个配置文件里面哪个方法呀,Contains方法很就能找到这个类对吧?找到这个类就找到这个方法吧,其实你想一想,在这你写的是这么一个函数。
29:23
其实底层用的是什么,是不是一个Java内部的方法呀。你一个方法返回不玩类型,所以这个结果我问你EL表达式有有没有输出功能,他能不能把这个结果出和false输出。可以吧,所以这个东西其实也就那回事啊,不难,这个东西来访问一下,咱们这边怎么访问啊叫。Fn test.dp啊。是吧,那如果你这边啊,你再来个换行,完了之后呢,你再把这个复制一下贴过来,这边贴过来之后这改一改叉叉叉叉有吗?没有刷一下false。
30:03
是吧?所以我说了第一句话,就是函数是对EL表达式的补充。函数啊,是对EL表达式的补充。好,那么现在呢,大家想一想。我们现在这个讲完了啊。内置的呢,没多少个,你看一共这个多少个呀,没几个吧。是吧,你看这个。看这个是什么。判断这个字符串是否以这个字符串结尾吧,再往下看。第一次出现这个索引吧?这个是连接这块对吗。它可以跟一个数组对吧,再跟个分号吧,什么意思啊,它可以将数组中的元素用分号的方式连接成一个字符串吧,再往下看,你看这不是一位数符吗。是不是有字块了是吧,再往下看这是什么。
31:01
这是不是长度啊?We replace是什么呀?替换吧,Spli什么,切割吧,Start with呢,是否以它开始吧?Subsre呢,截串吧,嗯。这应该是从后边截啊,是从前面截。这是什么?转大写啊,这是转小写啊,这是转大写啊,这是什么?记住空白吧,这都不用啊,咱们用的是自定义的,来接着讲自定义,自定义标签,咱们用自定义标签,注意啊,步骤第一步就你听明白什么意思了吗?就是说咱们内置的咱不用了。就是用自定义的标签,自定义标签的步骤啊,你看我也能写,他们也能写,我也能写,怎么写看第一步在web inform目录下新建euv.tld文件。
32:12
从fn.tld文件中拷贝模板行吧?来试试啊,看我怎么做的啊,这个必须掌握啊,这个很重要,在白屏框下点右键新建一个文件啊,这个文件咱们起名叫euv.tld行吗?写完之后打开,打开之后在这个文件中写什么东西?你这个里边怎么写的,Ctrl a全景CTRLC复制CTRLV粘过来。粘过来之后,没有用的全删掉,留一个模板明白吧,哪个咱就留第一个就行了,行不行,接下来大家看啊,这个改一改叫什么叫 EUV1.0function library叫EUV。Function1.0版本,然后这个写成EUV吧,行了,后边这个名字我就随便写了啊写成什么,写成这个3w.EUV高亢了。
33:09
EOV北京power到吧啊点com,点什么GS什么点什么GSTL什么function随便写吧,啊随便写,反正就是写个名字吧,啊很长,嗯,写得好高级一样是吧,行吧,写完之后呢,这个描述是不是可以不写,这个例子是不是可以不写,这个名不能不写啊,这个类名也得写吧,这个方法名是不是也写呀?来咱们找一个啊来家看一看,看这有没有这样一个类,比如说U下边有没有string u。是不是有一个string u秀啊,String u秀里面是不是有get get text code这个方法啊,我来映射一下这个映射一下这个方法啊,这个类名这个方法映射进去怎么映射在这写上谁的类名。此润要条复制一下贴过来,放到这点死润悠条这个方法怎么办?方法删掉,删掉之后把这个方法拿过来,这个方法它会返回string,需要顿方法名叫get text by code,所以这个时候呢,我就写上加longer返回string方该code加了点long string括起来就行了。
34:24
方法来调的时候需要一个string,返回一个string,然后那个函数名我也给它起名叫什么。Get text code行吧?好,大家看一看,这就写完了。第一步是什么?写配置文件。第二步呢,编写一个类。在该类中编写一个方法,该方法必须是public的。Public的啊,并且必须是什么static。
35:01
你看我这个是不是正好满足,这里面是不是公开的是不带的呀,好,所以第一步啊,写配置文件。其实是考了模板之后,第二个就是编写这个类啊,编写完类之后,编写方法public static定义好,接下来第三步是干什么。是不是使用即可呀,好,怎么用啊。看好了啊,我这个步骤是怎么完成的,首先第一步在这是不是有这样一个文件,这个文件里面写上这个东西吧,然后今下来写完之后呢,你一定要注意啊,你不是说光写的,你这个类是不是得存在啊,而且你这个类里面这个方法是不是得存在呀,好,写完这个配置文件写完累了,类的方法定下来了,接下来你的任务就是用怎么用,咱们打开这个JSP,你以前怎么用的,现在还怎么用就行了,怎么用同学们第一步。写一个t lab对吧,然后TLA后面写EUV后面写UI斜杠。
36:06
是不是多了一个,那你看这不就咱们自己写的那个吗?其实这个就是代号代的,代的是哪个文件呀,代替的是这个文件吗。是吧,你接下来怎么用啊,你能用的就用呗,你怎么用那就用呗,是吧,怎么用啊,八了大括号。人家叫FN,咱叫EGA,人家是冒号,咱也是冒号,人家是这个名,咱们得看一下,把这个名吧复制一下吧,放过来吧,人家里边是有参数的,咱们这个里边也有参数吧,是不是有个死string,所以这边我决定了啊,就加一个什么。加一个000,这是不是中国呀,这是中国吗。刷一下。
37:02
呃,这边呢,我看一下啊啊,这个得部署一下啊,这个没关系,这都小小事啊,来咱们点一下,因为配置文件写了这个没有放到服务器边啊,一定会挂错,嗯,这很正常,来洗一下,洗了之后咱们来刷一下啊,来刷。点点登录先啊,登录完之后呢,你就访问吧,这个吧,嗯。访问一下就有了啊。以前你写Java代码怎么写的?Java代码是不是U点什么get get t by code,这写什么000是吗?是这么写吗?现在它变成这这样一个东西了。是吧,你把这个写几个是吧,它是零零什么123。是吧,这边也一样改成0123是吧,来一个横线啊,来个横线加上去。
38:04
这边发一下。是吧,嗯。它的原理是什么呀?他看到EUV,就找到EV,找到EUV,找到路径,找到路径定位配置文件,找到配置文件,找这个名,找到这个名,找这个类,找到这个类执行这个方法,这个方法最终会返回什么?String EL表达式具备不具备一个功能,它可以输出字符串。这个盖test败扣的这个方法执行结束之后是个字符串吗?E表达式把它输出是个中国吗?如果你想输入,输入什么人什么人民币啊,你这得改呀,你得加一个什么C点啊。是吧,这改成一啊,多写几个,这边写上2340是吧,123。
39:00
再刷新。过来了吗?这个大家能理解吧,这样。还是那句话,其实这个底层啊,也简单啊。它就是一个配置文件跟类的联合呗,你只要有了配置文件,它是不是连接一个类呀,连上类之后,它是不是能找到这个配文件里面方法呀,找到方法那就执行呗,它执行有个结果,这个结果将来他是不是输出了,也就是说以后我们不写Java程序了啊。在JSP里边,我们尽量不要写Java代码了。我们全使用这种东西了。除了写这个之外,我们还使用什么?这不E表达式吗?和什么叫什么GSPL吗?来,咱们改造一个。今天的任务完成了啊,就讲这么多。那东西挺多的啊这个。嗯,其实就两个版本啊,讲了38版本是文件上传保存核准件,然后39版本其实讲了三个知识点,一个是ER表达是一个是DPL,还有一个什么方式是吧,自定义函数啊,这边呢,这个内容很多,也很琐碎啊,希望大家下一周呢下工夫啊把它把它吃透了啊,把它吃透了行,那这样的话咱们就来看一看GSTL联合什么。
40:25
E表示连个什么方式啊,修改分页查询用户信息。或者分析查询企业信息吧,啊,分析查询企业信息,企业。明白吧,企业啊,哪个哪个是分析查询企业。这个吧,这是不是分型产品企业啊,好了,这个全删了,没有用了吧。是吧,这东西。
41:00
Take LA吧吧C吧,加一个什么you are是把这个拿过来好,他定了啊,定下来之后呢,接下来继续怎么写,核心电梯库拿过来之后怎么办,这边。这个号情况还能这么写吗?怎么写,Say for each item far fart是吧,拿过来。这个item填什么就行了。怎么写?你从这个request的对象里边是不是能取出这个值?这说明我是不是也可以用EL表达式把这个数据取出来?所以这我写个配置行吗。哎,光写配置肯定是不行的,因为你写上配置就相当于你拿到了整体,这个item说过只能接收集合或者是数组,它是个集合吗?不是,它是个数组吗?也不是吧,它只是个什么对象?Page既然是配置对象,里边有没有个属性叫data list。
42:10
这是不是例子集合,然后点什么就行了。表达是点什么?是这样吗?他将来是不是会自动掉那个叫什么钙的什么是吧,这个就不多说了啊,那么现在大家想一想,这是那个例子的集合吗?是来继续。然后呢?这个元素是什么?企业吧,企业状态吧,好,接下来定了啊,这边怎么办?复制。贴过来改了啊改了。
43:03
行,这面就这么着吧。好,这个怎么办呀。到了。Come。到了en.or code?到1.or扣吧,继续。Dollar en.sales name。高的en.r。高的en.username。是吧?遭了en.org code。是吧,删掉。
44:01
这什么东西啊?叫displayar的显示图表那个吧,这个删掉啊,别用了,你看代码变成这样了。是吧,这都删了吧,你看这是不是还有判断呀。判断怎么写?刚讲过是吧,C什么if吧,判断判断谁啊。Dollar是吧?Empty前面加个什么?Not not,谁啊,Page list。是吧,如果不为空是不是才能循环,嗯,你看讲的全用上。如果不为空,开始循环拿数据。上面全都不用,一律删除。没有用了。这就变成那样了。核心标签库。
45:00
是吧,你用了联合用的话,就这样用就行了,你哪还有Java代码没了。你这个配置从哪来的这个配置啊。从Java程序来的,你在里边不是写了一个Java程序吗?那在在哪呢这个。Fe里边的fe里边有一个那个select了。诶不是叫分页查询,分页查询吧,你想一想你这个分页查询,你是不是把这个配置存到request的范围里边了,你调这个set,这个存进去之后,我问你,你跳到这个JSP之后,你在JSP里边能不能用EL表达式把它取出来。是不是可以取出来呀,EL干什么的不就说了吗?EL就主要的功能就是从某个范围对象中取数据吧,取出来是这样就可以了,来试试吧,这个东西你改完了,你得试一下,关了打开,打开之后你看一看啊,来这边的话,我们点一下登录,点完登录点这个吧,点这个点这个点这个点这个点这个来点查询,点完查询点查询来点查询。
46:04
是吧?这边能保留住吗?来点查询。这个在哪呢?这个上面是不是改过了。啊,上面改过吧,是吧,我就改改这一个吧,啊,我还是行的没问题,这个删掉,删掉之后再点查询你看。没事儿。是吧,你该怎么着还怎么着,你点它还是顺着他。事儿对。能理解吧,啊这样做,所以今天内容呢极其重要啊,也是持续的时间比较长,东西比较多,一共三个东西,GSTL,一个是EL表达式,一个是函数库,函数库比较麻烦,为什么?因为今天我们不只是讲了内置的函数库,还讲了自定义的函数库怎么自定义。自己写TLD文件,写完之后放到web info下,然后呢,我们再写一个类,写完类写完方法之后我们就可以用了。
47:05
啊,这个你也得会。行吧,啊这样,另外咱们这个这个是不是也可以再改一个呀。再改一个啊。我们再改一个吧,啊,还有时间我看看啊。改哪?改一下这吧,我点查询啊,我这个还这个还没有开合软件吧,我再点确定,大家看这我改一改。这个信息我改一下。还有这个吧,是不是还有这个呀,还有这个啊,这个信息是不是就展示出来呀,这是在哪个页面上,我关掉所有了啊,这边我再打开哪个。应该是这个这个明细吧,明细里边大家看是不是从块里面取出en啊,这句话能不能删掉。是不是用不着了,咱们一下改的是能取这个数据吗?啊试试啊来看这取一下啊在哪呢?在这了全改了啊,这改成什么。
48:07
改就行了,糟了呗,en.o扣的全改了吧,这个你就去用就行了,来放到这放到这就可以了,这个en是谁呀?En就是它啊,就是这个request get嘛,你取出来之后来继续往下,再往下啊呃,往下的话,咱们这边应该是什么。到了吧,哎,En点什么。Say name吧,来这我要讲个新知识点啊,来继续往下,这个呢。高的d.re cab吧,哎,我这几个应该是没有问题的啊,我再来试一下,点它点查询,点查询点一个点过来,大家看这个没问题吧,这个是不是也没问题吧,这个也没问题吧,这个美元怎么办?
49:11
嗯,限额币种呢,高了啊。en.re cry,这样显示是个什么结果呀?不是空啊,000001。点查询点查询点过去点确定你看。是不是000啊。你这加一个你你空格后边这是什么东西啊,这是还是用用那种古老的方式吧,这是吗?人民币吗。所以你得改了,不能这么写了,怎么写的?哎。咱们是不是在这有一个在web input下是不是写了一个文件,这个文件TRD文件有没有这样一个方法能用这个方法不能,但是呢,你看啊用一下啊,怎么用第一步干什么。
50:13
Sorry吧,叫什么take leave吧啊,Take leave,然后practice啊,然后写U啊,这边写谁啊,最后一个。前面这个名随便写吧,我们随便写就叫EGOV了,这能看懂吗?写完了,写完之后你用吗?你怎么用啊?往哪用,往这用来。跑哪儿了?哦,在这呢,怎么用高了美元,美元后边跟EGV冒号。Get TED by cold。括号里边跟上去。是这样吧,好了,但是这样写行了吗?
51:05
非要拿出来是中国,不是人民币。因为你想数据库里边 enr.RC这个拿出来值是什么值。拿出值是不是000,那你这个该概括你000对的数据库,对的,咱们配置名里是不是中国呀,所以你这直接写这个叫什么en.reg cry,你这不行啊,怎么办。啊,雨辰来了啊,啊,上当了啊。今天刚讲过,EL表达式的加号只做加法运算,不能做逗号连接。不,不过大家思路是这样的吧,你这要是000的话,我前面加个CY点,然后联合起来的话,是不是就是CY点000啊,那这样的我试试吧,啊,我先把后边的去掉,我这个肯定是不行的,我写个这样零零行不行,可以吧,嗯,这样肯定是可以的啊,来咱们再刷新一下,这样就没有问题了。
52:14
那关键是什么呢?关键人家现在呢,这个没法写这个你要是这么写的话,你得写加号,加号做对称连接是吧,En点什么RA什么C吧,你这么写的话,你肯定有问题吧,是不是报错了什么错,数字格式化异常。是吧,所以你你你想你想个办法吧,这个加号能交给加法程序吗。这个加号我不做了,加法程序能做字符串连接吗?可以来我再写个方法啊。怎么写呀,还是谁哪个类词优秀了?好,我问大家,现在是不是可以再模仿这个方法,再写个方法,而这个方法是不是可以考虑再加一个参数。
53:04
行了,这叫前缀吗?字号啊,怎么办?在这返回谁?我是不是在这个里边又加了一个方法啊,然后返回S加什么扣。这个字串连接是不是交给了加法程序,那么请问这个方法写完之后,要不要在这个配置里面再配一下?是不是再配一个函数啊,这个函数叫二行啊,但是方法名和这个方法名一样不一样,需要几个词钝啊,两个返回是不是还是论啊,那么请问这个位置是不是就不能调这个函数了?调这个函数吧,这写什么逗号?完美嘛,是吧,这样做不就行了吗?你想你现在依旧类找到的是哪个函数啊,是不是二这个函数,二这个函数是不是找到这个类,而这个类是不是找到一个方法,这个方法是不是掉的是两个参数啊?你看这个方法底层是不是会做综片连接,做完这后连接是不是就可以了?所以现在其实你可以明面上不写,你写到背地里边就行了,就这意思。
54:14
你就写到这个类里边,让他做怎么连接,你现在写个逗号就行了,因为这个方法在调的时候需要几个参数啊,两个都是子string吧,那所以这就去掉了。这就是自定义函数吗?你就得又说白了啊,就是说原先的时候啊,咱们是写的Java程序,现在呢,Java程序不写了。交给一个函数去掉了。其实效率又低了。是吧,你想一想,它得解析吧,他解析哪有明面上加化东西效率高啊,加化通就直接执行了,你还得翻译呢,你还得找配置文件呢,你还得有反射机制呢,但是说白了啊,就是呢,有一个目的,这个目的就是把JSP中的Java代码都给它删掉,不写Java。
55:02
就写表达式。底层就Java代码执行。所以这样的话就可以了,上面都删掉了,咱们这个就只有一表达式了,来这边点右键刷新。怎么了?行了。服务器停了。停了停了吧,停了我再登一下。我看这行不行啊,所以呢,咱们就来看一下点查询点查询点这个点确定过来看这边啊,嗯。行了吧,没事了啊,底层它执行的是哪个方法,这个方法,这个方法和这个方法方法名相同,参数列表不一样,在Java编程中,这种机制叫重载。这是允许的吧,嗯,配到配置文件里边啊,一定要配进去配这个非常好好写啊因呃,对了,还有个事忘了说了啊,这个能省吗?不能需要写类全名。
56:06
明白吧,参数类型写类全名就行了,好了,今天任务就到这就结束了啊行吧,咱们大家呢,就把这个东西写一写啊,有什么问题就问一下啊。休息一下了啊。
我来说两句