00:00
那各位同学到这块为止呢,关于在JSP归单下面如何进行JP文件的开发,那么我们就给大家介绍完毕了,那么我们说啊,在JSP规范中呢,它有两个两个内容组成,一个是告诉我们怎么开发JP文件来把这个运行结果呢写到显示体中,而另外一个功能呢,就是告诉我们的HP服务器怎么去调用这个JP文件,那么再下来咱们说说这个调用的这个问题好了。那么这边呢,我需要我需要干嘛呢?给大家准备一个课堂笔记,来说说这个事情啊,那么这个也是在面试过程中,至少呢,是在2019年在北京地区我们同学面试过程中会经常问到的一个问题,好了,在这里边儿呢,我们去写一个笔记啊,来班长看好了。那么这个问题在一九年经常会问到啊,我们看一下关于什么呢?JP这个文件,它的这个什么呢?它的运行的原理好了,那么这个原理呢,也是JP规范里边那么所所定义的,诶,我们去看看啊。
01:10
好了,第一个咱们写上关于我们说的这个STP这个服务器,它呢,调用JP文件的这个什么呢?它的这个步骤,好我们看看啊,那么在zip文件使用之后呢,那么有一个问题,实际上不知道大家有没有想到是什么问题呢?说呢,呃,在我们的这个server规范中啊,他认为什么呢?他认为啊,只有server light接口实现类是可以被我们的这个服务器来调用的。那么这个GP这个文件它是怎么调用的呢?那么我们先说到一个大体的步骤啊,再做分析,那么首先第一件事情我们看一下。我们的这个SP这个服务器,我们的P服务器,那么它呢,呃,首先要将什么呢?要将我们JSP文件的内容来做一个编辑啊,要做一个编辑,那么把它编辑为什么呢?编辑为一个server light接口实现类,哎,我们服务器在在去调JP的时候呢,他第一件事情呢,先要把这个JP文件里面所有内容拿出来编辑,编辑到一个S接口实现立综,这是第一步,那么第二步干嘛呢?我们的这个IP这个服务器,那么它要将将这个server light接口实现类,将这个实现类给它干嘛呢?进行一个编译,把它编译为什么呢?一个类文件啊,一个类文件。
02:49
因为我们说前面这个Java权限地呢,它只是一个Java文件啊,它只是一个点Java文件,它不能执行,所以说呢,我们的服务器呢,要把这个Java文件呢,诶进行一次编译,编成一个class文件好了,然后第三步,然后第三步呢,我们的这个AP服务器,它将负责负责干嘛呢,去创建,创建这个类文件,它的实类对象,那么这个实类对象呢,这个实对象它呢,就是一个什么呢?就是一个serve实例对象好了,然后第四步,那么第四步在这里边干嘛呢?我们的这个HP这个服务器P这个服务器,那么在这里边呢,它要将它要通过啊,通过这个S实例对象去调用。
03:41
那么调用一个方法,调用一个什么方法呢?调用一个service这个方法来干嘛呢?调用这上呢,来将将我们这个JSP文件中的内容来写入到我们的显示器中,在这儿好了,那么这个知识点呢,大家至少在2020年找工作期间需要去重点关注一下,为什么呢?我们说2019年我们说北京地区啊,北京这个地区常考常考的这个面试题,一九年的时候,我们有好多同学在面试过程中都被问过GP是怎么调用的,那么我们在一九年的时候也讲过这个知识点,但是有些同学真的是让我们很无语啊,他面职中肯是怎么讲呢?说人说了啊,那我问你一下GP是怎么调用的,咱学生讲了啊,怎么调用的,我知道我跟你讲一下,首先呢,你呀,要打开一个浏览器。
04:39
然后在浏览机里边呢,写上你要访问的这个JP的地址啊,我来在里边写上啊,写上地址,写完地址之后,你猜怎么的,一点回车,诶,他就调用了,然后当时有家长同学说完之后呢,回来还问问老师,哎,老师你说我答的不好吗?我答的挺好的呀,很细致啊,打开浏览器写上要访问的JP地址,一点回车就调用,人家说我答的不对,我就说啊,你上课时候干嘛吃的你啊,白给你讲了啊,那么这是这道题的正确答案,我们的AP服务器要先把JP文件的内容干嘛呢?把它编辑为一个serve light接口实现类,再把这个类编译为一个class,然后用出这个class类的实际对象,通过这个实对象调用一个叫做service方法,而这个啊,它叫什么呢?它实际上叫做JP service方法啊,叫做jip service方法,然后呢,这个JP方法呢,它会。
05:40
就将我们JP内容写到显示题中,这是这道题的标准答案,我们一九年反复讲,我们一九年总有一批学生,就是我们说那15%的学生,他们总是记不住,为什么呢?脑子笨吗?学历低吗?英语不好吗?这点破玩意儿跟你脑子笨有关系吗?跟你学历低有关系吗?跟你的英文不好有关系吗?毛关系都没有,就是懒,你自己懒自己送分题不答,那么你就自己挂掉好了。那么接下来我们。
06:12
遭点政府证明这个事情是真实发生的,好来,那么现在呢,我们去新建一个网站啊,新建网站这里边呢,应该是我们说的什么呢?第24个啊,24个我们看看关于我们说什么呢?这个gfp文件它的这个调用原理的分析啊,JFP这个文件它的这个调调用啊,你看调用的这个原理的这个分析,好保存,那么保存完了之后呢,那么现在我们在24里边,咱们建一个JP出来,先把index抹掉啊,不用它了,建自个的,然后在这里边呢,在web下面我们现一个JP取名叫什么呢?叫做弯点JP好了保存,那么在one.jp里边,我们就写一个输出内容,写上什么呢?文字内容,Hello,我们说的word hello word好了,非常简单吧,就以它来看看,刚才的步骤是不是是不是对上的啊,那么我们现在呢。
07:12
找到这个,找到这个idea,通过idea呢,把这个24这个网站呢,去托给这样委托给我们的他做管理,然后给网站呢起个英文别名就叫做my map好了,My map保存一下,然后这里边做同步更新好了保存,然后现在呢,在这里边呢,咱们启动啊,启动好了啊。咱们看看这块效果。取完了之后呢,我们去访问啊,访问一下我们说的弯点JP,弯点P走来了来了行了,那么这个时候你看刚才所描述步骤里边啥呢?服务器在收到请求之后,先把这个JP的内容编辑为一个算的接口时间内,然后呢,要把它编译为一个类文件,我上哪里能证明这件事情是存在的呢?跟我走,它有个固定的位置在哪呢?来我们看一下第二个第二个问题,我们看一下关于我们说的这个HTP这个服务器它编辑与编译啊与编译我们的这个JP文件的这个位置在哪里呢?在C盘下,那么我们到C盘里边去看C盘,在C盘里边它我们去找一下什么呢?呃,我们找一下这个U,我们找一下这个用户,用户在用户这里边呢。
08:46
选择你当前登录系统的这个用户,我是用管理员身份登录的,我进来了,那么进来之后呢,里边有一个什么呢?有一个IDEA2018工作空间,在这空空间打开它之后,里边有一个系统,系统里边造成的早tomcad找tomcad,然后com之后进来之后你看啊按照时间划分,那么这个这个文件夹是我们刚才新建的这个网站,按时间划分,你看11:21,现在10:23在这儿好了,进到这里边来,进去之后在沃那夹里边,在沃那夹里边有一个凯德明娜快了各位快了快了相信我啊凯德娜进去之后,然后在这里边有local house look进去之后有一个什么呢?网站名称MY卖咱网站不叫my we吗?好了,进去之后有个OT快乐快乐各位快乐快乐啊过来,然后阿帕奇,然后里边有JP文件夹,快乐各位进来看这咱们那个JP教程名。
09:46
是one.jp,那么这个就是one.jp被编辑的这个serve接口时间类在这,然后这是什么,这个类所对应的什么呢?这个这个Java文件所对应的类文件,No在这个地址下,假如面试官问你的话呢,家长面刚才问你的时候,那怎么办呢?把这个地址给他,那么在这个地址里边呢,我们看一下邮寄的地方,这是什么呢?这是你登录系统的角色名称,我们看一下这是登录这个系统啊,登录我们说这个Windows啊,Windows这个系统的这个用户的角色,这个用户的这个角色的名称啊,角色名称好了,然后在这里边往下看,那么这是什么呢?这是你当前的这个网站的工作空间名称,按时间去看啊,这是你当前这个网站它的这个工作空间,工作空间,然后再往下。
10:46
哎,在这儿,这是你当前的这个网站的别名,网站别名,那么写完之后之后呢,可能有的同学傻了吧唧的就真的去背背这个地址了,你把背完之后,你说完之后,人会觉得你很傻,你很傻,那么一般怎么说呢?这个位置在哪里呢?比如说面试官问你,诶,你在哪里见识过JP被编辑为read,被编译为一个类文件,你怎么说呢?标准答案在这,标准答案说标准答案你刚才讲什么呢?我在什么呢?我在work文件夹里边work no,这里边work,我在work文件夹下看到了这个证据啊,我在work下面,哎,看到了什么,看到了我们说这个正,你可千万别真的把下面这个东西给背,背出来,人说你有病,你说你有病啊这里边那就说老杨,你怎么备注呢?我有病呗,啊,我有病好了,那么在这里边我们去看看,在这里说你看到什么呢,咱们这个。
11:46
JP叫弯点JP,那么把它编辑为我们四二接口偏力的时候呢,它的名叫什么呢?叫做弯下划线JP,那么如果是凸点JP呢?那么它的所的接口权叫什么呢?叫to_J点加文件,这是其相关的类文件,好了,然后咱们把什么呢?把这个S接口实验力拿过来放到A点中分析一下啊分析一下。
12:13
那么飞来之前呢,你先看一眼这个颁长JP,它很简单,它很简单,里边就一个输出内容,Hello word,你把它打开哦,一个serve接口之间类,那么先看这个类的继承关系,那么在这里边我们看呀,它继承了一个叫做http JP base这么一个类,把它集成这么一个类啊,然后呢,实现两个接口,那么甭管是这个负类还是两个接口,咱们都没见过,那么咱们此时能不能去证明这个类是一个serve light接口实现类呢?因为我们说Java类里边只有server接口实现类能够被他们调用,那么怎么办呢?去问问他hpp base,那么在idea里边呢,它实际上并没有下载这个类,所以怎么办呢?我们去找一下,实际上在JP规范里边,我们看有没有它的,咱们看一眼啊。
13:08
在我们的这个JP这个价包里边有没有这货呢?没有啊,没有,这是我们从外部引进来的,引进来的这个东西,那咱们就上百度问问,谁知道这个力他的竞争关系,上百度问一下没什么大事啊,过来,然后在这里边呢,到百度里边,呃,我们看看啊,哪个是百度呢,百度没出来,那么咱们就搁这啊,这不就有了吗,在这。CTRLV啊,搜一下谁知道好在这,你看这是什么呀?GSP内部API文档里边有关于这个副类AP base的一个介绍,那么你进去看一眼看就行了啊,你看啊,这个类,说这个类怎么个意思呢?看下啊,首先它是一个抽象类,它是一个抽象类,那么在这里边它继承了谁?是不是老人啊,HTPS老熟人嘛,对不对?AP threat是什么呀?AP threat是JA threat的一个子例,而我们的JA threat我们知道它实现了S接口,所以从这里边从集承关上可以看出这个加va力它就是一个货真价实的serve接口实现类,然后我们To Get呢,把JP的内容在这里编辑完毕之后,要对它进行次编译,把它编译为什么呢?一个类文件看到没有,在这好了。
14:32
然后接下来往下看,我们的JP呢,我们的服务器呢,要拗用出这个类的实施对象,你用出实施对象之后干嘛呢?它要调用这个类中的叫JP的测试方法,而这个方法将负责什么呢?将负责把我们在JP里边所写的内容,就这内容写到详体中,那我们找一下,在这里里边CTRLS去找一下,找一下我们的JP下划线,我们说什么呢?Service这个方法找一下啊,有没有呢?嗯,我们看一啊这里边找一下啊,JP_service这个方法啊,找。
15:11
在哪呢?哦,在这在这啊,是这个方法叫下划线JP设置方法改一下啊,CTRLV这个方法在执行的时候,要把我们在这题里边所写的内容写到显象体中,在哪呢?看下这个方法,咱们这题里边就写了一个内容,Hellowork,这是字符串,那么在方法里面找一下,找找找找找找找找找找找往下找,好咱们看看啊,那么这个方法内容比较多,那么我们先看看啊,这个方法里边第一段内容是什么?各位同学你先看一下,这是这个方法里第一段内容,在这个内容里边他要干嘛呢?他要干嘛呢?哎,看一看,一起看一下各位,在这个方法里边他要干嘛,在这里边他做什么事情,很简单,你看在这个方法里边,它来判断什么呢?浏览器所发生的启用方式啊启用方式好了,那么在这个代码里边,你发现它是有中文解释的,说什么呢?我们的JP文件它只能接收什么呢?三种请求方式,哪种种请方式,Get的请求方式,POS请方式和hi的请求方式。
16:25
所以我们一般接收的是什么呢?接收是get和pose,而JP呢,它不仅接收get pose还能接受hi,但甭管是什么请求方式,都是调这个方法GPC的方法,所以这一段来判断当前请求方式是否是合法的,明白吗?好,慢慢看。那么接下来在这里边干嘛呢?它声明了我们当前这个方法中的一组局部变量,那么在这组局部变量中你能看到谁呢?全局作用对象,你能看到谁看到我们说的绘画作用对象?那么这个请求作用对象在哪里呢?你看这个方法声明的时候,在这请求对象和想应对象,记不记得刚才我们讲过说S与JP在联合调用的时候的一个案例,看这当我们的这个S它它工作完毕之后,他是不是要通过tomca把他的请求对象和响对象交给这个JP啊,实际上这两个对象最终去哪了他?
17:26
这的就是这个JP所对应的S中的这个JP算法中作为参数存下来了,在这看到没有?好了,同学来了,好,这一块说完了,那么再往下看,下面这块是一块什么呢?大大的一个try catch语句块,那么在串里边看到一组命令read response.said count time来设置显示图内容,那么这段内容哪来的呢?你看one.jp里边是不是这样内容呢?一模一样的在这里边被编辑成了一段命令,看到没有?好了,那么我们的hello怎么输出呢?往下找一下看这一行命令out. rightout.right弄了半天,原来在这个方法中,人家是通过输出流将GP里边这个内容写到了我们的这个显应体重r.right看到没有,在这儿,这时我们说这段内容真正被写到想象体的这个命令,看看到有没有得到这个对应关系在这,OK,在这里,哎,在这行了。
18:29
那么再往下去看看,那么我们所写的加命令呢?我们写的加命令它又是怎么出现的呢?好,往下看看啊,回到我们当前的这个JP里边来,在web上面我们建第二个JP文件,好,我们写写啊JP说到什么呢?说说我们说的to.jp保存,保存之后把它们抹掉来写上它,先写上我们的执行标记,我们说执行标记不是命令,只是一个符号而已,那么我们证明int,然后写上NUMBER1,然后等于100,然后在这里边写上int number等于200好了,然后在这里边我们输出NUMBER1,它的值,它的值是多少?然后写上输出标记NUMBER1好了,写一个BR,写个BR,然后写上number,它的值是多少?那么这里边写上什么呢?写它写上输出标记啊,写上这个相关的输出标记啊各位。
19:29
写上number啊,写上啊number的数是多少,然后这写上这个BR,哎,写上BR行了,那么现在我们访问一下啊,访问一下这个图,点JP访问它,那么记住了,他们怎么调用的呢?先把JP内容拿回来,编辑到一个所的文件中,然后把所的编程类文件,然用出这个类对象,然后通过对象调用这个类中的什么呢?JP设试方法,把当前JP0容写到显体中,好访问一下,走在这找证据,是不是就在这,看到没有在这对吧,好了,把涂点摘皮扔过来,扔过来,把这些不用的啊不用的都抹掉。
20:12
行了,第一个我们在JP里边写的这段Java命令在哪里出现呢?它出现在,诶我们看看后来。把这个拿回来啊,把这复制过来。它出现哪里呢?出现在对应的这例中的GP测试方法中,我们找一下,找到我们的这个GP测试方法,在方法里边往下看,判断启用方式,声明局部变量,然后在串里边,你看到没有?我们在J里边所生成的这个加压变量相当于是什么呢?相当于是这个service方法里边的局部变量NUMBER1NUMBER2好了,然后再往下看,那么我们的变量NUMBER1和number值怎么被切到显体中呢?走这两个内容对应的信息在这往下看,你看out.right把我们的内容NUMBER1的值写到显应启动,你看在这儿NUMBER1的值啊,写显应启动了,然后再往下看在这二和看到没有通过输出流将变量NUMBER1的值写到了减体重,所以在这里边你看到是什么呢?我们在出现这篇写的时候,在这里边它相当于是什么呢?这个内容里边看好了在这。
21:27
二点内容,然后再把下边那个粘出来是什么?点print number看到没?就是这个样子,就这样子啊,在这里边写它找对应关系啊,找对应关系看到没有,各位找一下啊,找一下这个对应的这个关系哦,你看文字还是比较厉害的啊,拿眼一扫就看到了,聪明人,聪明人不看命令看什么呢?看中文呢?是不是在这里边不全跟启用方式有关嘛,是不是啊,可以秒看的,行了,这里边告诉我们了,我们在GP里边所生成变量等同于在这个方法里边所生成的局部变量,而我们的变量怎么输出呢?2.print其他选项提供的看到没?它是有源码参照的,各位有源码参照的看源码,哎,好了,然后不着急再往下去写上啊呃,写什么呢?写我们说的这个什么东西啊,来过来写我们的内置对象,我们去找一下啊,在web下面找这个request JP找它CTRLC张来。
22:36
扔到我们当前这个网站中,Request使用,内置对象的使用,在这在这。怎么就来了一个request呢,怎么拿就直接用呢,凭什么呢,好把地址发过去,我们看一下啊CTRLC,然后在这里边呢,我们发发请求过来传这V快JIP啊在这走你嗯,那我们看看啊,在我们网站下面哦,他没有做实时更新啊,他没有做实时更新,那怎么办?重启重启一次。
23:09
啊那啊走稍等稍等一下啊启动看这。把这个地址。这过来。好了,然后我们再看一下啊,帮我们找一下啊,找一下这个request.jp,然后呢,写上什么呢?Username等于多得走诶。他说在my web网站中没有request.jp,他闹呢,那我看看啊。249,那么这时候是怎么回事呢?我告诉你idea就偷懒了,我们找一下啊,先把付关了啊,这个idea呢,它本身有一些缺点的啊,偷懒就是一个地方,然后选al set早到加24在这个位置中,那我们到这位置看看有没有JP文件CTRLC,然后呢,回到这里边来问一下啊D,这货是不是又给我投哪了,瞧没瞧见在web上面人家没有给我放出JP,看没看到,没有放,那怎么办呢?要么你呢,要么你把你找到它,把这个删了,让重新启动一次,重新启动一次,要么还有一招,还有张什么章呢,我们看。
24:27
塞进去,把JPCTRLC。那也可以把它干嘛呢,扔进去,哎,所以不用删了,他说那个文件扔哪个文件就行了,好了,然后接下来我们重新启动下啊。真懒鬼啊,看一下idea有些时候就是这样的啊,莫名其妙的就不帮你做这个文件同步了啊,很恶心啊。好了,那就完了,之后呢,在这里边让大家写上啊,说request点过来。
25:00
好,拿到这个值了,那么此时问题来了,那么在这个JP里边直接干出来的这个request,这组命令在哪呢?根据刚才讲解,这组命令应该出现哪里啊,出现在我们说的这个JP service方法里边,对不对?好找好跟我一起找,找一下啊,在work里边找一下娜MY找找什么呢?找JP。那是不是在这里边有了找它的对应的JP,找到对应script,直接干到我们的这个JP设方法中,在这往下找,你看啊,首先这个这值方法运行时,他得到了tomcat传过来的request,看没看到这是个参数,那么这个参数可以在这个方法里边内部来进行使用request,然后往下找,找谁呢?找这个叉在叉里边,看内容在叉这里边。是不是使用request的在这儿是不是跟它对应的,是不是跟它是一面对应的request,这就是内置对象的由来啊,我们的那个内置对象在这里边,它实际上我们说这些内置对象要么是这个方法里边的参数,要么是这个方法里边所生成去变量,包括section啊,包括application vacation啊,在这像section application vacation他们是怎么被初始化的呢?往下看,你看section初始化get session午餐application呢?
26:25
在这get sort contest看到没有?哎,在这,这是内置对象的一个解释,好了,那么接下来我们再往下去瞅瞅,那么咱们刚才写的控制语句呢?咱们找找啊,在这题里边我们所写的那个看起来怪模怪样的控制语句。好打开它哪一个呢。是不是老五老五里边,哎,你看这个拆分的控制语句行了,我们把它呢,占回来啊,占回来CTRLC啊,老五CTRLC,然后扔到什么呢?扔到我们的web下面去,当然了,考虑到idea可以偷懒打开呀,看有没有绿光飘过去。
27:07
没有行了,没有就没有吧,那这没有一粘扔进去对吧,扔进去好访问index5.jp,访问它index刚们说的5.jp赠品,谢决入内,好问他怎么执行呢?是不是找到了这个inex5.jp,对的这个Java啊,过来搁这一放,说这个if这玩意怎么变的呢。我们在JP方所写的内容等同于在这个JP方法写是一样的,好,直接站到这个列中的JP service方法中。在这,那么这里边直接跟到哪里啊,串里边看到没有in特A等于15,看我们的这个IFS在这仔细看一下是不是一个完整的一啊,是如果年龄18,如果年龄大等于18怎么办呢?通过输出流将这个标签起到显示体中,Else通过输出流将我们的这个标点写过去,那人说这是什么东西,这个我告诉你是什么,换行啊,换行啊,你这写完之后不不是换行了吗?这个斜线R写函是换行,好了各位同学,那么这个就是我们说的JP文件的什么的调用原理,希望各位同学在2020年的时候面试过程中说,可别在这道题上丢面子啊,我之前见过两个学生,就是我说那15%的学生瞪个大眼珠啊,回来跟我讲,说老师我今天面试挺好的啊,问题老简单了啊,今天问到你一个阶段的知识点,那么简单,我问啥了?GP的运行原理你咋说的,8万。
28:46
对,写地址运行不用调用,老师你说说好不好,是不是很很清晰很留怪,我说你去死吧你啊,就这么四句话都不背,你去面试,人家看我去这个东西都不懂,你还能学点啥呢,对不对,所以把这个东西给我备住了,二零年再问的时候别掉别掉面,别掉分子啊,行了,保存一下,那么我们。
我来说两句