00:00
这边那么写加命令呢,可以那么写CSS命令呢,可以那么写H命呢,可以都可以写,包括什么呢?这个Java命令也能去写,那么怎么去写呢?好了,那么接下来我们啊去新建一个网站,咱们来看一看啊,先把这个服务关了,呃,在这里边新建一个网站文件new model,然后我们给我们的网站起个名字过来,在这里边呢,写上什么呢?写上我们说的21啊过来。那我们写上关于在JSP这个文件中啊,我们的这个Java命令啊,我们Java命令他的这个什么书写的规则,好吧,保存一下保存。JP呢,你看它的任务是什么呢?它的任务啊,是把我们的do get do post方法的运行结果写到我们的响应题里边来的,而在do get的不破的里边,这个响应结果呢,一般是放在Java变量里的。
01:02
那因此呢,在GP里边,它必然要能写加压命令,要不然你怎么达到这个加压变量呢,对不对,好,那么下来我们去看看啊,首先呢,在我们的这个应大的债体中。这种内容不需要输出的显示启动抹掉,我们尝试习惯加压命令int number1等于20,然后呢,写上int number等于什么呢?等于30,然后在这里边呢,写上什么呢?说int number3等于NUMBER1,加上number好了,那么这是我们自认为。是一段Java命令的命令,那么现在呢,我们去看看啊,说Java命令,Java命令能不在浏览器中编译和执行呢?肯定是不能的,加明在量系是不能,它只能在我们的服端编译和执行,那么现在我们把这个网站交过来,交给我们当前的这个他来管理啊,那么请到ID conig,然后这里边DEPLOY21给网站呢起个英文别名就叫做MY,同时呢,告诉idea对于这个网站的更新要做同步更新,避免我们重新启动contactca,好走,我们看一下。
02:22
稍等片刻啊。好了,那么运行完毕之后呢,我们看到了一个比较尴尬的场景,什么场景呢?当我们的应代表JP在运行的时候,它并没有把这组内容当做Java命令来执行,而是干嘛呢?而是把他们当做了我们的这个文字内容写到了显示题里边来,也就说他不知道这是一段加压命令,加压命令能打到断器里执行吗?不能,所以在这里边你看你如果在JP里边直接写加压命令的话,我们的JP是不能识别的,所以咱们写上,在这写上一段内容,不答说呢,在我们的这个JP文件中,直接啊,直接去书写我们的这个Java命令,它呢是不能,不能被我们的这个JP文件所识别的,那么此时只会只会呢?被当做,被当做什么呢?我们的这个字符串。
03:26
二来写入到我们的显应题里边来,它只会被当个字数串,想尴尬了,写了白写,那么这是问题来了,我到底在JP里边该怎么写呢?为了能够让JP文件知道你所写的是段加va命令,那么你需要把它放到特殊的标记中,什么标记里边呢?看这咱们看一下啊呃,那么在这里边咱们写上到第八章,我看看啊,那么在这里边呢,它叫做什么呢?它叫做执行标记,诶执行标记,那么在执行标记里边所写的内容才会被JP认为是一段Java命令,那么此时JP呢,会在服务端执行直接Java命令,好了,那么咱们就说一说啊,过来我们在这个web下面去新建啊,新建一个JP,老二点上index,我们说的2.jp保存,那么保存完了之后,我们看看啥叫执行标记呢?
04:26
哎,间括号们看间括号百分号,我们看这标题是我们写的啊说间括号百分号,哎,在这我们看一下,你在JP里边咱们先写着啊,说在我们的这个jip这个文件中啊,我们看一下在JP这个文件中,那么只有只有书写在这个执行标记标记中的内容,那么他才会被当做当做什么呢?当做我们的Java门店,他就当做Java门店,哎,好了,那么这就是一个直行标记尖括号百分号,它是什么东西呢?是命令吗?其实它并不是,它只是一个符号而已,它只是一个符号,比如说我们说啊阿里巴巴与四世大道,说苏世大道里边派了一个人去定位阿里巴巴的住所,由于他们阿拉伯国家。
05:26
的人啊,房子长得都是一样的,所以那个人干嘛呢?那个人就在阿里巴巴的门上画了一个圈圈,这个圈圈就是一个符号,就是个标记,用来跟什么呢?跟其他房屋所区别的,那么这个执行标记,这个执行标记呢,它首先不是命令,它只是一个符号而已,它只是一个符号而已,那么利用这个符号呢,来告诉JP,在这里边写的呢,都是我们的Java嘧啶。那么在这里边当中写什么呢?我们看一下,第一个说在这个执行标记里边,我们可以干嘛呢?可以去声明,声明我们的加va变量啊,我们可以证明我们的加va变量,比如说int number1啊,等于100,然后呢,Int number2等于200,好在这在这好了,可以生成Java变量,那么这时候呢,这是两个Java变量,而不是两段文字了,因此你再去访问index2.jp的时候,此时这个JP会不会把这两段内容当做文字写到显象题里边来呢?是不会的,因为这是Java命令,好保存一下,我们访问一下in加,我们看一下。
06:37
我们走一下先上什么呢?Index,我们说这个2.jp走是啥都没有,有那后你看源码里边有吗?没有,这是一段加va命令啊,这算加压命令好了,它在这执行标记里边可以去声明我们的加压变量,它可以干嘛呢?第二个在里边可以声明什么呢?可以声明我们说的运算表达式,那么什么是运算表达式呢?比如说数学啊,数学这个运算表达式,然后呢,我们说的这个关系运算,比如说我们说的逻辑运算,诶它都可以声明啊,那比如说把它声明一下,这里边呢,写上什么呢?说int number3等于等于什么呢?NUMBER1加上我们的NUMBER2好了,先然注释这是什么呢?这是数学运算,哎,这是数学运算,好了,然后再往下写上,说这里边呢,咱们写上啊,说个。
07:38
尔值负尔值,变量值减NUMBER4,那NUMBER4等于什么呢?说如果我们说这个NUMBER2它呢大于等于NUMBER1是成立的,那么这个时候呢,我们就输出什么呢?我们就输出我们说这个NUMBER2的值,NUMBER2的值啊,否则我们输出NUMBER1的值,这是什么运算呢?各位,那么在这里边啊,我们看看啊,这个运算数啊,咱们写错了,叫NUMBER4啊好了,然后这是什么呀?这是我们说的这个关系运算,对吧?这是我们说的这个关系运算好了,然后我们再往下去写一下,那Y支持什么逻辑运算啊,逻辑运算说呢,布尔值,然后写上NUMBER5,然后等于说什么呢?说如果number它呢大于等于200,然后并且我们的NUMBER1大于等于100成立,那我将反回一个处。
08:38
这是关系,那逻辑,哎,逻辑算就跟你在加例中去写代码是一样一样的,好了,那么除此之外呢,你还能怎么写呢?在这里边你还可以去声明我们的控制语句,诶,第三个啊,声明我们的控制语句,那么各位什么叫控制语句啊,什么叫做控制语句呢?哎,我们看看啊,呃,在这里边咱们去写一下,比如说我们说什么呢?If判断,说if说if过来,然后写上这个else,说如果呢,说如果我们说啊这个NUMBER2大于等于NUMBER1,哎,怎么怎么样,这是一个简单的if else还能写什么呢?写一个放循环啊写一个放循环好了,说要定一个变量,I呢等于一,I呢小于等于十,那么I呢,加加no。
09:38
控制语句啊控制句,所以在这个执行标记里边专门写加压命令的,可以声明变量,可以做相关的运算,可以做控制语句啊控制语句好了在这。那么这就是直接表示,那么这些内容都是我们合法的加压文件,他们不会被JP当做字符串写到现场启动的,所以此时你打开浏览器,你打开浏览器啊,我们看一下,那么在这里边呢,你做输出HTTP,然后呢过来,然写上看啊HTP,然后写上logo h8080,然后写网站名称MYY,然后写上inex,我们看2.gp,那么此时在浏览器里边我们看不到我们所写的任何内容,因为这些在index2.jp的内容呢,它实际上都是加命定,而加va实际上呢,都在我们服务端运行完毕了,啊运行完毕了,好了,这是第一个书写这个Java命令的规则。
10:39
那么接下来再往下看一下,如果现在我需要把GSP中相关变量的结果写到显应题里边又怎么办呢?好,那么接下来我们再往下去看看啊,我们在外B下面呢,去新建一下,写上一个什么呢?JP啊,我要起名就叫做什么呢?叫做in带3.jp好了在这啊。
11:04
保存,那我在这里边首先呢,写一个执行标记,来声明几个变量出来好了,咱们看一下啊在这这呢,Int写成什么呢?NUMBER1等于100,然后int number等于200,现在我想把这两个变量的值写到显示器中,看我怎么办,那么在这里边呢,来咱们写啥前内容啊剩呢,呃,在我们的这个JP文件中,它实际上呢,也是通过一个标记啊,通过什么呢?通过我们说的这个叫做输出的这个标记,那么来通知通知JP,将我们的这个变量的值,将我们的这个加码,将伽va这个变量值来写入,来写入到哪里呢?写入到我们的显应器中的好了,然后在这里边这个输出标记怎么。
12:04
写呢,先括号,百分号,等号,然后写上什么呢?写上变量的名称,比如说NUMBER1,哎在这啊,我们做一个BR,这个BR也是输出结果,然后里边我们写上啊一个文字内容说变量NUMBER1它的值是多少,它的值是多少,诶我们看啊这个输出,然后现在我们访问一下这个英大尔三,你看一下,那么当一加三执行的时候呢,我们看一下走。变量NUMBER1的值是100,包括我所写的BR也被干嘛呢?也被写到了我们的显示器里边来看这看这啊好了,那我们再写上啊这后呢,我们的这个变量变量NUMBER2它的值是多少?好了,再写上这个指出标签,我们看一下写上什么呢?结果号百分号等号number号行了,这边呢,加一个换号,诶输出告诉这P,你在运行的时候把这个变量的值写到相体中,哎,这里边写好之后呢,我们再去看一下,过来访问点三输出,那变值是200,那么在这个执行标记里边,除了将变量的值来写到墙体之外,还有还有功能我们看一下啊说呢在这里边出来说这个执行标记它还可以干嘛呢?还可以通知我。
13:35
们的JP,那么将什么呢?将我们的这个运算结果来写入到我们的显示器里边来啊,写入到我们当前的显示显示器里边来好了,在这那比如说我想知道什么呢?我想知道NUMBER1加上number的值等于多少,这是一段什么呢?文字输出内容好了,那么因此呢,在这里边我就写上间括号,百分号,等号,取NUMBER1加上number,你看在这里边呢,他要先进行我们的数学运算,得到一个结果,然后把这个结果呢通知JP写到响应体中,诶通它和响应体重,那么我们去访问响应点三,我们看效果那多少啊,300,所以呢,各位你看啊,如果你在JP里边要写Java命令的话,他们必须放到执行标记中,那么如果要把相关的变量或者是相关的相关的。
14:36
叫什么呢?相关的这个运算结果,只要想启动要通过什么呢?这个输出标记,输出标记也不是灭定,它就是个符号通知JP这里边是一个加压变量,要把它的值写到显示体中,你看JP的学习其实是非常方便的啊,非常方便的。好了,那么刚才有同学说了,在执行标记里边能不能倒包呢?执行标记里边是不能倒包的。
15:02
那么我宝宝该怎么办呢?来往下看啊,不是说棱德草是还没讲到这一块,诶不,还没讲到这一块啊,行了,那么现在呢,我在当前网站里边,在src下面声明一个加va力好了,Plus我写上啊,com.BG power note点咱们写成ENTST就叫做student,好保存,然后在这里边呢,生明两个属性啊,Private写成T加in sidd private写成什么呢?String s,然后产生对应的SET1GET方法好过来,然后再来什么呢?再来两个构造方法。一个有参,一个午参啊,其实大家看构造方法重简呢,便于我们干嘛灵活的创建当前这个类的实例对象啊,咱们看一下好了,那么现在我要干嘛呢?我要在JP文件里边又出一个学生例行对象,那么它肯定是一条导包的问题,对不对?好看我怎么做,在web下面我们呀新建一个JP,那要写成什么呢?叫做inex,我们说的4.jp好保存,那么保存完了之后呢,把这些不用的,不用输出的东西抹掉好在这我要先写上一个执行标记,那么在这执行标记里边干嘛呢?哎,我要去创建,创建一个student这个类型的对象好了,那这边写了student,然后写着Hu等于new,我们说的student,然后学员编号呢是十,学生姓名呢是map,那么写好之后。
16:47
是要倒杆,怎么倒杆呢?跟你在家里种倒杆是一样的,你呀,Out,加回车走行了,那班到哪去了呢?往上走看这。看到没有,往上走啊,在这里面,在这我们JP里的导包的风格是这样的啊,看到在配置里边iport导入这个包了,看到没有,他并不能在执行标记里边打包,要在这个配置里边,那比如说我再声明一个,我再去声明一个类似集合啊,我再声明一个类集合,那后写上类等于new,然后写上类,是不是也要打包啊,也要打包,Al加回车,Out加回车,你看那它是这么导,自动导的,Out加回车就行了,好了,然后在这里边我们做输出,说什么呢?一个文字输出内容,学员编号,那么在这后方呢,我想输出什么呢?输出这个学生的编号ITu.get sidd,那么执行这个方法把sid取出来,然后通过它写到显示体中,然后在这里边我们再写上说呢,这个学员他的性。
17:59
啊,写人的姓名,那写上什么过来,I有点get s,你看多爽啊啊多爽然我访问一下,好,这边问不行,因为你新增了一个类,说你修改一个类没毛病,不用重启,你新增了一个类,新增是新增,修改是修改,新增一个类,人家挨这帮不了你,所以我们得重新启动一下,啊重新启动好看这启动。
18:36
启动完了之后呢,我们去访问一下,访问一下啊。行了,那么在这里边呢几呀,我忘了,我看啊四啊四,那这里边写上什么呢?写上index,我们说的这个四啊index啊,这个4.jp走尼no是不是十麦在JP里边打包,其实也很简单,跟加力是一样的啊放这是不用你自己写,你out加回车,它自动帮你导,这里的包不用你管啊在这儿看到没啊,看到没啊,我们看这个东西就是快,我们说在编程过程中呀,我们说所有的高级技术,它无一例外都体现一个特征,什么特征呢?好用啊就是好用,哎,这里边它就是好用,就是快,所以我们为什么程序员不需要去记命令呢?因为命令啊,每过一段时间就会更新,这是第一个原因,命令每过一段时间就会更新,第二呢,后面出现了命令,一定是对前面命令的一个封装体。
19:40
中状体,那么用的过程中,你只需要传参,记住一些简单的格式就可以了,所以我们程序员只记流程与原理,它不是记命令的,为什么呢?首先会伤心啊,我好不容易把这些备注了,然后过两天来个替代品,你说你伤不伤心,你伤心,然后再一个是什么呢?再一个我们看啊。
20:02
再个是什么呢?命令太多了,他不可能记住呀,啊,千奇百怪的,所以记流程,记原理,先写步骤,系好步骤之后上网上去找,诶,我要做这个功能,在这技术里面教什么方法,就是这个样子的,哎,所以人说呢,学编程就是说越学越快,就是这个道理,流程因为我记住了,换一个东西一看什么玩意儿哦,一看比如说spring mvc吧,说spring MC干嘛用的呢?它用来代替我们threat想all threat不是个动态增态文件吗?对不对,那么磁源微增呢,来简化serve word的开发负担的哦,一想那里边儿有啥负担呢?那么我们带着问题一看就知道了,它记住越学越越好啊,越学越快,那么你底没打好你就蒙圈了啊,就蒙圈了啊,好啊,那么接来我们再往下去看看,看看什么呢?说我们说在JP里边可以写什么呢?可以写我们说的控制语句,那么控制语句中的结果怎么能写到我们想象体中呢?诶,我们往下。
21:02
去看看。说在web下面的这里边呢,我们呀,去新建一个啊,去新建新建一个J,我们看看啊,在这里边写上index,咱们说这个5.jp好了,保存保存之后呢,那么我们去看一看啊,首先呢,我先在执行标记里边,在执行标记里边我说明一个简单的加压变量,那我说明一个简单加压变量啊过来先上什么呢?In特H等于什么呢?15啊等于15。然后我将要根据什么呢?根据这个变量值来决定将何种内容写到显象启中,那么首先我们先写第一个内容啊,这是一个found标签,然后写上style,等于什么呢?等于color,红色,然后写上什么呢?Found size size,然后写上45G的像素好了,然后写上什么呢?写上热烈欢迎啊,热烈欢迎,这是有可能写到想体的一段内容,好了,CTRLCCTRLV,然后我们再去干嘛呢?我们再写另一个内容,那我们写上什么呢?谢绝入内啊,咱们写上说呢,呃,谢绝入内,谢绝入内好了。
22:20
那么在这里边呢,我们需要GFD文件在运行的时候,它要根据这个Java变量值来决定这两段内容谁能写到显示题中啊,谁能写到显示题里边,这跟我们原来在四段里边做的几乎是一样的事情,比如说我们零六里边,在用户添加完毕之后,我们是不是要做一个判断,做一个判断来决定将合同内容写到显示器里边了,对吧?好了,在这,那么此时该怎么写呢?诶,我们看看啊。首先呢,在一个JP里边可以出现多个执行标记,那么我们再写一个执行标记在这儿啊,再写个执行标记,那么在这个执行标记里边能不能用上一个执行标记的变量呢?能,因为在JP里边他把所有的执行标记当做一个整体来看。
23:13
再说一遍啊,在JP文件里边,它把所有的执行标记当做一个整体,当做一个什么整体呢?当做的是一个执行语句块,它当做是一个执行语句块,哎,在这看到没有啊,行了,所以可以用,可以用作变量,那我们写个if判断啊,If说在这里边呢,If else啊,控制语句,妥妥控制语句说什么呢?H大于等于18,输出一个结果,然后呢?哎,说出个结果行了,那么这段结果怎么办呢?有同学可能想到了,说把它直接放到这个if里边行不行?你看一下瞬间是报错的啊,瞬间报错看到没有,为什么报错呢?因为这这一亩三分地里边是加的时间,在这里边所取的命令都必须是加二里边合法的命令,那么你放的是一个HL标签啊,他能写到这里边来吗?他写不到啊,它不能。
24:13
写那怎么办?诶我们看看说在JP里边所有的执行标记是当做一个整体来看,这句话记住啊,在G里边所有执行标记当做一个整体。那么。那么我说会有个什么现象呢?看一下我们把什么呢?把这个执行语句块的内容分别声明在两个执行标记中,诶你看一下这个样子可不可以呢?可以还是那句话,在这区里边所有执行标记的内容当做一个整体,当做一个整体好了,那么这个时候。这还是不是一个完整的if呢?系这还是一个完整的正整if思,然后此时我把那个放到标签,放到这两个执行标记之间行不行?行啊,这块是三不管的地方,我们可以放啊,CTRLV就这一放,那么放好之后呢,是啥意思呢?你把这两段内容当做一个完整的容来看一下,如果H大于等于18成立,就通知GP将这个放到标签,写到响应体中。
25:34
哎,然后再看else else else的这个执行语句块,是不是也可以生明在两组执行标题中呢?这一个这一个对吧?一掰开,留出中间这个三不管的地段,在三不管的地段里边放这个标签,CTRLCTRLV,好在这好,那么这是JP里边一种比较有特色的写法,其机的原理是什么?在JP看来。
26:04
所有的执行标记都是一个完整体。完整体也就是说,最终。在我们的JP里边,他怎么认为这边代码的,他怎么认为这边代码的,这是一个执行语句块,然后里边写的什么呢?里边写的就是int h等于15,然后呢,这里边写上if,说if什么H大于等于18好了,怎么怎么样好了,然后呢,啊,我们说这个else else,然后在这里边,那么我们说我们在这里边嵌到的这个标签会被GP怎么理解呢?在这里边GP是这么理解的,说如果A大众式法成立,那么它将会通过一个输出流将这个放到标签。内容写到显示体中,它是这样的,我们看一下啊,然后else这里边如果else成立,那么它呢,就通过什么呢?就通过这个方式来做输出。
27:01
那么我们看看这么写完之后好不好用呢,好用。由于H值啊,它等于15,那么它是不可能大于等于18成立的,所以程序最终走的是L这块,所以最终应ex5.jp在运行完毕之后呢,我们将看到是一个红色字体,谢绝主内,我们看一眼,在这里边写上INDEX5好了,走一下,那谢绝入内,那么这是我们说在JP里边写控制语句的那种格式,当然这种格式呢,其实呢,它的可读性是相对较低的,所以后面呢,它会被替代,被别的技术替代,那是后面基本要考虑事情,我们这块呢,那么先看这就行了啊行了,那么这是写if控制语句,那我要写放循环呢,我要写放循环控制语句呢,哎,那么咱们来看一看,看一看啊。我们回过头来,回过头来之后呀,在21这里边儿,我们整一个啊,整一个写上我们说的第六个JP文件好了。
28:05
那我们写上什么呢?写上我说的叫做index,刚才说的这个六啊index6.jp好了,保存,保存完了之后,看我的啊,看我的啊,首先呢,在这里边我先造点数据进来,我先啊制造什么呢?制造点数据出来,好各位造点什么数据呢?造几个学生对象出来啊,造几个学生对象出来啊好了说呢啊student,哎,Two等于哎怎么写成HU1,它等于叫做new student,这是第一个,然后学生为十,然后呢,这个名字叫做麦好分号结束,奥加回车,诶你看咱别闹啊,奥加回车好了,打包倒进来了,然后我们见呢,三个学生出来,一个两个三个好了,那么这边是三个学生说X。
29:06
U1 h2HQ3,然后这边写的是二十三十,然后这边呢写上艾伦,然后这边呢写上四尼斯好了,不着急,然后再整一个类似集合出来,整一个类似集合好了,那我们写上啊类等于NEW2啊fair好了,我们看看啊fair,再far,再等一下,然后在这里边呢,我们把三个学生信息放到这个例子结个中,ADD,哎,写上我们说的这个H1好来,然后类似点ADD写上H2好了,然后类似点A,写上AT3好了,写进去了,然后在这里边呢,我们加个泛型吧,加个泛型student,哎,说这个例子这个里放的都是学生类型对象,那么现在利用这个JP,他在运行时要做什么事情呢?
30:06
啊,他要从集合里边去进行循环,便历把集合里的学生信息,那么集合表格输出,那么我们看在这里边做输出,我们看啊写上啊,我们说的这个数据的输出,数据输出那在这先写上啊,写上一个table,写上包边框等于二,然后写上alive,等于什么呢?等于center cn t center好了,然后在这里边呢,咱们写上这个内容啊,Table啊,已有table了,那么先写什么呢?先写我们的PR行,你看这把做输出你就不用写up了,你就上面写边命令就行了,很清爽的呀。啊TD说里边有什么呢?有我们说的这个学员编号啊,怎么样,有我们说的这个学员姓名啊,学员的姓名好了,这两个东西啊,编号姓名,然后数据行,那么有多少个数据行呢?有多少个数据行呢?那么得看。
31:06
这个机组里边有多少个循求对象,所以在这里边写执行标记,写执行标记,哎,做for循环,来一个for循环,我来写上student I tu问号,然后写上什么呢?写上我们的类,每次从集合里边拿出一个学生对象,那么怎么把这个学生对象的结果写到显应体中呢?在同一个JP文件里边,我们的执行标记当做一个整体来看,所以在这里边呢,这个放循环你可以把它掰开,掰成两段,掰成两段,哎,两段之后呢,把这个T丢进去,哦,丢进去了,那么丢进去之后什么意思?每做一次放循环,就将一组TR标签写到显应题里边呗,就这意思写几个呢?这个集合里边有三个使用对象,所以循环循环三次,那么就三个TR写进去了,那么每次写的时候怎么办呢?要把当前这个对象的值写到显示器中,用它写输出标记s.get sid,然后在这里边再写上过来,写上它F有点get f内好循环控制语句写法,写好之后访问老六给我。
32:31
走起,找老六的。嗯。是不是结果输出了?当然在写的时候,那你看看这个循环输出多简单,说把这么点完人写出来的,这起很轻松,你要放到我们的这个out,我们说的这个显要对象里来搞这件事情话,我跟你讲,那可是高端大气上档次的,看到没有,开发强度不在一个级别上啊,不在一个级别上,看到没有啊,好了啊啊,行,你们这些肾虚男,让你这些肾虚男看就行,抽一根休休息放松啊。
我来说两句