00:00
啊,我们看看啊,刚才我们专方同学呢,提了一个问题啊,说如果在作文对象里边放的是一个引用类型对象,那么这时候我们怎么把引用类型对象中相关属性内容借助一二表达式写到我们的显示题中呢?好,那么咱们就这个话题来说一说这个问题啊好了,那么在这里边咱们再建一个网站出来。啊,说在这边呢,呃,我们写上model,然后企业级应用,然后选择web application,下一步那么给咱们的网站起个名字,它叫做零二,那在零二里边呢,呃,我们就写上,啊听什么说输出输出这个引用对象的这个属性的内容,好了保存。网站建好之后了,那么首先呢,在这个新的网站里边,我是不是得有一个引用类型,对引用类型啊,所以在SRD下面啊,那么我先建一下这个类吧,呃,请看com.BG power notde点,然后我们写上ENT,点咱们写上什么呢?Student的这样的一个引用类型好了,然后在这里边呢,设置其相关属性啊,Anti,呃,学生的这个编号啊,Private写上Che叫做什么学生姓名好了,就在这么两个啊,那两个,然后在这里边呢,我们给它产生对应的set与get这个方法,诶,我们看取消点错了。
01:36
啊,Al加回车al加insert啊过来,然后产生对应的set get这个方法好了,然后我们再产生什么呢?再生它的构造方法好了,那么有无参的过来,然后还有什么呢?还有我们说的这个有参的构造方法,哎,行了,这就是咱的引用类型啊引用类型。
02:00
那么接下来呢,接下来我们在这里边再建一个serve,在serve中将建出一个学生类行对象,并把这个学生进行对象呢塞到request作用语中,并转交给我们JP好了,然后在这里边呢,我们去新建一个fair出来好了,然后表,然后写CTR controller啊,我们看一下,写上我们说什么呢?这个所的名字吧,保存,保存完了之后呢,过来,然后写上s map弯出写上斜线Y好了,然后在这里边做一件事情啊好,第一个,呃,第一步干嘛呢?我们去创建一个什么呢?引用类型的实例对象,就是建个学生们,那么student叫做Hu,等于new我们说的student好了,那么学生编号呢,我们设为20,学生的姓名呢,叫做A,一个引用地形对。
03:01
下好了,然后第二步要做什么事情呢?那么在这里边将我们的这个引用类型对象,那么把它存入到请求作用于表中来作为我们的共享数据,好了,那快过来点set attribu在这,然后我们写共享姓名,比如说叫什么呢?叫做K,然后把H的引用往里一放,行了,然后接下来第三步,那么第三步呢,我们通过这个请求转发,我们通过这个请求转发,那么向我们的comca去申请啊,去申请调用啊,申请调用我们的这个inex 1.jp啊,1.jp,由JJP呢,把这个学生的编号姓名取出来,斜杠写上体重,那么我们这里边走写上request.get request开,然后里边写上斜谢index。
04:01
下方1.jp好了,然后点forward,把我们的request response标过去,是不是很简单,写出来的文们现在已经很简单了啊,然后我们就来写写这个index 1.jpctrlc,回过头来,那么在我们web下面,我们去新建这个jip文件,然后CTRLV保存报端之后我们看看,首先呢,先用的是传统的写法,那咱们看看啊,到一半传统的这个写法好了,那么第一步干嘛呢?拿数据对吧?拿数据都在这里边,我们写上什么呢?request.get on attribute好了,然后呢,共享数叫什么呢?叫做K,取出的是一个什么呢?是一个学生类型对象,所以呢,你得在这里边做一次强转,那写上什么呢?Student,哎,在这好了啊,Student行了诶。
05:01
我们看看啊,在这儿。然后在这里边呢,呃,Out加飞车行了,包导进来了,导完之后,那么接下来干嘛呢?做输出,说这个学员的编号怎么办呢?那这里边写输出标签有点get sid好了,这边呢,做一个换行,然后再往下写学员的姓名啊,学员的这个相关的姓名,然后在这里边做输出啊做一个输出好了,hu.get s name no,行了行了之后呢,我们先把什么呢?先把这个网站委托给toca做相关的这个管理。好了,然后在这里边呢,这里边有了做个小小的配置,然后I的conig,然后在这里边呢,咱们写上什么呢?斜线MY啊斜线MY外好了保存一下,保存完了之后呢,在这里边呢,走一下更新,更新之后,那么咱们看一下把它呢启动起来,看这啊看这。
06:11
911。好了,启动完了之后呢,我们访问one threat,访问one threat走那出来了,出来了,但是这样写呢,在企业老板看来浪费时间,浪费时间来换换步骤好了,那么我们去看看啊,在这里边稍后我们写上什么呢?写上这个学员的编号,诶,那么通过EL表达式该怎么写这个东西呢?首先第一个这个学生对象在哪?学生对象啊,他现在存在于请求中向宗,所以这边就写上了,它叫什么呢?Requestcope。那么学生对象在请求作用对象中叫什么名字呢?它叫做K。好了,那么在这我们就找到了请求作用于对象中的这个学生对象了。
07:08
那么这个学生对象里边哪个属性存放学员编号呢?是S,那么在这里边就写上什么呢?Sid这个属性名,好了在这,那么大家注意这是什么呢?这个啊好了,那么我们的这个sid它呢是来自于哪里呢?来自于我们这个学生类啊,我们看一下它来自于学生类中的属性的名称,那么一定要注意大小写,大小写要完全一致啊,大小写呢,它们要完全的一致,不能用一丝一毫的偏差,好了在这,然后再往下看,那么我想在这里边向显示题里面输出学员的姓名好了,那怎么办再来,那么学生在哪呢?在请求总向宗,他与哪个共享数据关联呢?K。
08:09
好了,然后点什么呢?S,那你看之前的代码是这个样子,而现在变成了这个样子,很轻松的啊,那么我们再访问一下这个班输出,你看结果是一样的啊,刷一下,那结果是一模一样的,当然在梳写的时候呢,还是这个数字方面啊,这方面,那么在这里边我们看到了一个新的知识点,就是你怎么通过ER表达式在JP中将作用与中引用对象的属性内容写到详体的这个格式,好了,那么接下来我们往下去说一说啊,我来啊,呃,那么在这里边我们看啊,这是第三个大点啊,第三个大点说通过这个EL表达式,那么将我们引用对象中的属性,将引用对象中作的这个属性来写入到我们显体中的这个格式,首先第一个其命令格式是什么样子?命令格式,那么在里边写上。
09:09
美元符号大括号这里边先写什么呢?作为对象的别名啊共对别名好了点点我们的这个共享数据名称,共享数据名称,第二我们的什么呢?我们的属性名在这好了第二个,那么这个命令它有什么作用呢?命令作用在这里边,从啊从我们的这个作用与对象中,那么读取什么呢?读取我们指定啊,指定共享数据啊,指定共享数据所关联的这个引用对象啊,对象中引用对象的这个属性值,咱们写上啊这个属性值,那么并自动的自动的将这个属性,将我们这个属性的这个结果把它写入,写入到哪里去呢?诶,写入到我们的响应题。
10:09
总哎,在这最后一对项关注名,那么这个属性的名字一定要注意一个问题,那么看第三个啊第三个好了,就我们当前的这个属性的名称,它一定要以什么呢?一定要与我们这个引用类型中的属性名啊,这个属性名完全一致,包括什么呢?大小写包括大小写都要完全一致,看到没看到没啊。啊,这个属性是私有的,可以调用啊,他甭管这属性是什么什么,你看我这是私有属性,在这里边可以直接调用,他不管这个为什么呢,为它用的是反射机制啊,因为我们的压表达式呢,它是通过这个反射机制,李松啊李松同学,它的运行时呢,是通过反射机制来得到当前类中的这个属性的,那问题来了,啥是反射机制?里综你知道呗,我猜你根本就不知道啥叫反射机制,既然你学过,但你已经早忘记了,哼啊,这东西啊,反射机制。
11:18
反射机制呢,呃,是我们这个什么呢。反射机制啊,是我们将来往高级工程师去进行冲击时必备的一个知识点啊,反射机制啊,反射机制,那么有没有同学知道反射机制是干嘛用的呢?李聪同学,你你打class是不是表示你知道反射机制?那么里头同学你能不能说一说反射机制有啥用?啊,反射机制有啥用,你能不能说一说啊?李东同学,你能不能说说这个反射机制有什么用啊?对,老崔给我讲过,反射机制是我们向高级工程升级时必不可缺少的一个知识点啊,映射类啊映射类,好了,那李聪我再问问你啊。
12:08
通过类文件反编译,不是的啊,李松同学,李松同学,正方同学,那么我们去映射这个力有什么用?我们映射一个类文件有什么用?你告诉我,咱们接着往下聊,来反射机制就能映射一个类OK了,那我映射类文件有啥用呢?知道同学接着说,接着问题往下聊,对吧?赵高上里同学说呀,反出来映射一个例OK了,那往下聊,映射一个例文件有什么用?好了,赵文子,还有我们说赵高尚呢,给出答案了,来读取这个立综的相关的信息属性的方法,行,然后那么我们再往下去问,报告传答案,那你通过反射机制能够读取这个内容的属性和相关方法,那么读这些信息有什么用?咱们接着往下聊,对,咱们接着往下答啊,同学们知道答案,往下聊,看第三个问题,你通过反射读取力中的属性和方法之后,那么接下来。
13:10
它有什么作用呢?我读完这些东西有什么用呢?你看是不是就停止在这一块了,好什么反射面试中啊,反射能力是个类,那为什么应应是一个类呢?啊,因为我们可以来读取它的属性和方法,那读到属性方法干嘛用呢?你你说使用对我们干嘛用呢?怎么使呢?是不是倒了,是不是可以倒了啊,动态实别对象行,那王一坤,那我接着问你,那么我们为什么要动态实别对,为什么要通过反射机制来动态创建出某个类的实例对象呢?王永坤,那你可以交替第三关了,目前来说只有你能进到第三关,那么第三关我再问你,我们为什么要通过反射机制来创建一个动态实力对象呢?来接着往下聊,看看你能跟我聊几步,我们通过反射能创建一个动态实像,对吧?对可以了,那这第三步,那为什么创建一个动态实对像,知不知道为什么。
14:11
你晓不晓得呢?有谁能到第四关呢?各位有谁能到第四关啊,增加这个程序的扩展性。从哪里能看出增加程序的扩展性呢?啊,从哪里能够增加出这个程序的扩展性呢?王玉坤啊,我们看一下你看啊。那么在这里边啊,其实各位同学啊,你在学一个知识点的时候啊,轻易不敢说我会,真的啊,轻易不敢说是我会的,你要在面试过程中,你说我会这个知识点,你只能说啊,我我我用过它,我用过它大底有了解,你敢说一个会,甚至有些新人说我精通这个东西,那全是开玩笑的啊,开玩笑一下啊,哎,我们开玩笑不需要关心具体的这个实力的实力对象的类啊,不叫关系类,就是王玉坤的答案呢,有点激进,但是如果是面试官的话,我敢说一件事情,你们根本干嘛呢?就没有,根本就没有使用过这个反射机制,做过什么呢?做过任何东西啊,做过任何的这个这个东西,所以你们答案呢,特别的抽象,特别的空洞。
15:33
啊,所以人说啊,你听讲,我我有我有我有工作经验,问完之后啊,三到四步之后,你有没有工作经验,人家就已经知道了啊像王永坤友好不能好不容易进到第四关,但第四关已经完全暴露出来了,他的答案。太空洞太抽象,太空空象没有什么呢,没有任何啊,任何实际的这个经验啊,所以在这里边各位同学你得列啊,得练,那么反射机制是我们和工程师向高级工程师来进阶的一个什么呢?关键点很多时候在Java里边,反射机制它是蛮天飞的,你后面springc spring里边全是反射机,今天下午有空的时候,要是我心情好的时候呢,我给大家演示一段反射机制这的应用,给大家去见识见识,让大家看看啊,这玩意儿怎么用啊,怎怎么用,行,咱们先回到我们这里边来,那么刚才我们看到的是什么呢?通过这个E表达式,通过我们的E表达式呢,那么在这里边呢,它呢可以将作用对象中。
16:38
指定的这个引用数据对象中的相关属性的值来写出来的,那么这是一个格式,那么我们有同学赵高尚同学之间问个问题,如果我的作用与对象里边啊啊。呃,那就是知识点讲完了呗,还还有空闲时间呗,那就心情好呗,是不是啊,我主要怕你们不好,我怕我讲完之后你们心情不好,因为你们看不懂啊,好了,那在这里边呢,我们看看赵高上刚才问过另外问题啊,如果在我们的这个作用欲对象里边放的是map啊,Set啊,类似这种集合怎么办,怎么办呢?没有办法,那么我们也L表达式里边呢,它不具备电力集合的能力,所以你的作用对象里边如果放的是一个集合,那不好意思,ER表达式没办法来做输出,所以在这里边大家要记住啊,我来第四个啊,说在这个ER表达式里边,它没有什么呢,它没有提供,没有提供什么呢?我们说便利,便利什么便利集合的这个方法啊,这个方法,那么因此呢,他是无法呢,从从我们的作用。
17:53
对,对象中去读取集合内容来输出的,他只能读取一个简单的引用对象中的属性,他不能读取我们集合的内容在这里边啊,这是它的一个缺陷,那么这个缺陷呢,在我们的第五个阶段中,将会由GI tr来补上,来补上它第二条有这个功能啊,有这个功能好。
我来说两句