00:00
这个过滤器啊,我们不应该加在这个setting里边,因为这个过滤器处理乱码应该是属于这整个项目的,是这样吗?好。来溜出来一个咱们来看啊,一个package啊啊这个包啊,你不能直接叫filter啊,只要是web相关的组件,咱们是习惯于以web开头,对不对,web.filter就跟我们以前那个web点。Controller是不是一样的?创建个过滤器啊,过滤字符编码的。Coding。Filter filter filter,好,来吧,咱们来写一下这个过滤器啊。Implement什么future啊,Future好多呀,哪个。第几个吧?
01:01
是不是第三个,咱们现在是不是外B端组件玩的就是Java X轴这个包啊。好,Filter,好,重写这个方法啊,咱们写重写这个do filter方法就行了啊好,这里边咱们来一个re EQ,这里边儿咱们来一个叫Rep,你看老师之前是不是叫request和response。我为什么在这这里边儿改风格了呢?因为跟我们之前的这个接口是不太一样。这个是个什么?我之前叫request,那个是什么信号,Http request,为了有效的区分开OK吧啊后边过滤序列啊,咱们来一个OK吧,好,我们现在啊来进入到这个过滤字符编码的过滤器,OK吧,好,首先咱们要过滤。
02:00
啊,Post请求中文参数乱码的这个问题啊,好,来request.set traco里边什么utf。杠八,好,接下来过滤响应流,响应中文乱码的问题,好。点set content type test-HTML什么你们说我写。A,是不是呀,等于什么UTF-八,好,大家注意啊,这些写完之后啊,你不要忘记干嘛呢?你是不是不要忘记把这个请求给它放行了,也就到达了过滤器,咱们这个请求是不是得到达这个目标S。
03:01
啊,不要忘记将请求放行啊。将请求放晴好train过滤器亮点do。Filter re EQ,然后Rep OK吧,好,我们现在来找一下这个web插苗啊看看。怎么配置一下啊。过滤器应该配在哪呢?应该配置在so上面还是下面,它一定要配在上面啊好,Future。下边咱们来一个future mapping。来个you are part啊。这个路径怎么也一下。嗯,You are a person,绿神呀。我就等你们说这句话呢,律所有啊。
04:04
高兴行吗?那老师没事埋个坑,你们往里跳,其实是件好事,为什么加深印象能理解吧?啊,可不是逗你们玩的啊,杠星行不行啊?思考杠清律,所有事情是没有问题,但是你想想,有没有必要我访问一个CSS资源,加载一个JS资源?我访问一张JPGPNG图片,我都得走一下过滤器,是不是会使得我们这个访问的这个效率会降低啊,对不对,哎,咱们律谁就行了呢。咱们是不是绿后台就行了,好来个星点什么就行了,读我这种写法对不对?如果是后缀名形式的。通配的通配符相关的一个匹配,大家注意啊,前面这个杠一定是什么,一定不要加,加上之后怎样。
05:07
啊,加上之后咱服务器洗不开能理解吧,这个杠一定不能加,除了这种星点度的形式啊,咱们是不是都得加这个杠。行,咱们对于URL啊。嗯。咱们来一个杠。行。轻点度ABC高度。哪个对,哪个不对,说吧。
06:01
第一个对不对,对没错,咱们平时使用的就是这种形式,对不对,第二个对不对。哎,音量怎么减小了,第二个也对啊,第二个也对,OK吧,第三个呢,对没问题啊,第四个对不对,第五个对不对。哎,出现争议了啊。第六个对不对。注意啊,如果是这种,大家注意啊,通配符结合后缀名形式的匹配,只有这一种形式,前面不加杠,OK吧,它不存在任何的前缀,也就是说这两种形式全是错的,OK吧。啊,错误啊错误啊,如果你配置错了啊,这可不仅仅只是你访问不到资源的问题了,你连服务器都起不开,这种实验你自己回去做啊OK吧,好啊好,那大家注意看啊,我们现在啊,仅仅只是绿后台行不行?
07:12
哎,我GSP用不用滤一下啊。哎,你想GSP的这个执行的原理是什么?JSP最终执行的原理它跟HTML是一样的吗?不一样,HTML是浏览器发一个请求到服务器,服务器找到了这个HTML,我给你浏览器是不是解析HTML就行了,我现在浏览器发请求访问JSPJSP我拿到直接给浏览器,浏览器能解析吗?为什么?因为JSP里边有Java脚本浏览器能够解析HTML代码,但是它解析不了Java代码,是这样吗?所以说JSP得先翻译成我们的SNE,说白了得先解析成Java临时文件,是这样吗?然后Java临时文件再编译成点class文件,是不是在虚拟机中执行啊?最终我们GSP页面中所有的内容是不是都是以什么响应流的print right响应流的形式给我们打回去的?
08:16
是这样吧,好,那我GSP要不要一下。是响应流啊,你看你看我这个过滤器里边,对于响应流你也得过滤啊,我GP用不用也得走它滤一下。嗯。其实GSP本身啊,大家注意啊,如果GSP没自己没有设置这个编码的话,它本身是需要绿一下的,因为GSP的本质是不是也是响应流啊,但是你看看咱们这个JSP为什么不用率啊,没有说到点上啊,哎,也就GSP最上面是不是已经给你设置好了,问题在这儿呢?OK吧,所以说咱们是不是绿后台资源滤星点度就行了。
09:02
对吧,行,这个过滤器加完之后啊,咱们再来测一下是不是我们想要的这种结果啊。执行一下啊。好。呃,这个账号咱们来随便还是随便来啊,密码好咱们点。登录。这是不是我们想要的,那如果账号密码是对的,咱们再来看看这个信息啊,能不能让它变得正确啊,来登录找一个说账号已失效啊。行,咱们这个账号来看一看。这有十项,这个咱们改一下啊,2019年是不是就行了,好,但是验证下一项呢,是不是为零啊。
10:03
好,继续往下验啊,来张三123登录说账号已锁定啊。啊,改成一对吧,现在这个IP地址啊,有点小问题对不对,好,咱们拿这个IP地址貌似叫做local host。大家注意看啊,其实我们拿到这个IP地址它叫什么呀?咱们来看一看啊,大家注意看啊,如果你的IP地址是local host,那么咱们直接通过remote a DR给你拿到,就是一大串零加上个1OK吧,所以说咱们在实际项目啊,在做实际项目访问的时候,咱们是不能用local house的,咱们都是真实的这个IP地址啊,那么我们代表本机的IP地址它应该是什么呢?127.0.0.1由这个IP来代替我们之前的local host是这样吗?行,我们来看看张三一二三点登录IP地址受限,我们来看一看这次我们拿到的是不是就是我真实的IP地址啊?
11:12
好在我们的IP允许访问的IP当中不包含啊,好,我说给它贴上就包含了。行。再来试一下啊。刷新咱们走一个啊,比如张三123现在是不是都具备了,对不对,点个登录是不是相当于登录成功了,对不对,好,登录成功之后,大家注意看啊,我们现在当前的这张页面啊。是不是应该在这应该列出来。我的名字。他应该列什么呢?是不是应该列出来我这个用户表的这个内真实的名字,张三是这样吗?那这个张三应该从哪拿呢?Session语种,我们已经把优对象保存到session语种了,对不对?你想拿任何与这个用户相关的信息,你从这个优对象中取就行了,对吧?好,我现在要从C中拿,但是我现在是个什么页面呢?同学们HTML啊。
12:13
怎么办啊,哎呀,哎,咱们得把它改成JSP对不对,好。来我们的这个。Web APP下面worker bench啊,大家注意看啊,登录成功之后,咱们是不是跳转到这张页面index.html啊,是它吧。来看一看啊,确认一下啊,同学们登录成功后。是他不worker bench下的index HTML是这样吗?是它啊,我要改它。好,把它改成咱们这个JSP啊。好,首先把它转过来。
13:05
好,再把贝斯标签。那过来。好,那么接下来你看看这张页面里边是不是就有这个点点杠。哎,这个点点杠是不是一律全去掉。下边啊有很多啊,大家注意看啊。啊,下边用的都是相对路径是吧,还好还少点啊行,我们现在来点击CTRL加F搜索谁呢。点点杠是这样吗?啊,现在从第一个开始搜啊,但是呢,我不能一个一个去,太麻烦了,大家注意看啊,点这个复选框,这个对勾表示的是全选,看到没。点一下走是不是全选了,统一回退走一个全干掉了,OK吧,这个页面中所有的吊杆上啊,全干掉了。保存好,我现在来改一下这个后缀名啊。
14:04
好,Worker bench下面的这个index HTML给它正式更名为点。接SP走一个,好,大家注意啊,当你敲完回车之后,下边是不是给你弹出来这么两个选项啊,好,这是啊,你以前HTML做过了一些相关的这个关联,OK吧,你你点它可取消,那就不改了,你要点它看到没do factor啊,点它咱们就改了index JSP OK吧,好,那在我们这个登录成功之后,这个咱们也得改一改了啊,应该。跳转到worker bench下的index.jsp,好,来试一试啊。
15:02
好。我们来看。哎,我怎么觉得他突然变大了呢?有没有选择?刚才我无意间说轱辘滚轮了是吧?好张三123啊,咱们现在登录啊,登进来,登进来之后大家注意看啊,咱们是不是确确实实是跳转到这个index JSP了,对吧?但是大家注意啊,我们工作区的这块内容在哪呢?在这儿呢,大家注意看啊,页面加载完毕之后啊,我们要展现这个工作区的这个信息啊,在worker be区下的index.jsp下注意看啊,在这呢,看到没?window.open啊,好在页面加载完毕后,页面加载完毕后是不是默认执行Dollar function中的内容啊?好,那么这一句话是不是肯定是默认自动执行的,对不对?好,在工作区啊,这个工作区就是这个啊,Work area frame OK吧,这是属于前端的一些布局相关的信息了,OK吧,简单做个了解啊,在工作区啊,打开相应的页面啊。
16:22
的页面,OK吧,好,但是大家注意看,我们在这里边引的是一个什么路径,很明显是一个相对路径嘛,为什么说它是相对路径呢?如果引的是绝对路径的话,你看看啊,我这个web APP的根是不是这个work bench啊?没错吧,Work bench下边有一个main main下边是不是有一个in htl?所以说当我们集成了这个base标签之后,所有的路径是不是都得写成绝对路径,否则相对路径不识别呀?换句话讲,当你加了这个base标签之后,我们页面中所有的相对路径集体失效,OK吧,必须绝对路径啊,加什么前面work?
17:13
变曲啊,必须从根上开始往下顺,OK吧,好,这回我们再来试试看啊。刷新说好使了,好,紧接下来我们就得把它给处理一下了,对吧,找一下咱们这个张三啊。张三呢?貌似是他吧,大家注意啊,如果你不确认的话,你给我确认一下为什么啊,大家注意啊,为什么我需要确认一下这块我有东西要说啊,这块咱们确认说是啊,因为有很多同学啊在自己啊做无数次次这个实验啊,改了无数次,哎,我就是得不到效果,其实你改的这个地方和你改的页面不是,你改的页面和你显示的页面不是同一个。
18:00
很有可能OK吧,好,所以说啊,这是经过咱们确认的对不对?好,我们要从session预对项中拿什么user从中取name,显示的是张三两个字,是这样吗?好,那么咱们肯定是什么呢?你既然我们以前做的是session.set attribute,那么我们在这里边是不是应该是session.get attribu,但是啊,在JSP里边session.getribu太麻烦了,我们使用什么EL表达式对吧?好到了画括号三构不数三与对象啊,点什么?User这句话是不是表示的就是get atribute user,好在user再点一个getname,但是呢,咱们这个session scope是不是可以省略掉啊,只要是预对象,大家注意啊,只要是预对象,咱们这个叉叉叉scope系列的,比如说我们现在用的是session scope,对吧,那是不是肯定还有requestcope啊,Scope啊,还有什么?
19:14
Application scope对不对?只要是这些带scope系列的这个隐含对象啊,统一是可以省略掉的,OK吧,好,来user.name啊,咱们来看看是不是张三啊,走一个没错吧,张三,但是大家注意看啊,我先点一下。我得往后拽,往后拽都不行,我得下边往后拽。这很明显用户体验很差,对不对?好,所以说这种东西做的应该往左串一串呢,好这个怎么串,就在于你自己了啊,也就是说你永远不会要求什么呢,不要要求这个做圆形的人把所有的东西给你调整好。OK吧,啊,根据这个需求的变化,咱们这些东西肯定得还需要我们自己微调呢。OK吧,所以说HTML代码有些时候咱们还得掌握一些,对吧?好,咱们来看一看啊。
20:06
哪去了这个东西是吧?行啊,我来,来点空格给你串一串得了,空格怎么穿NB。SP,是这个吧,我们来一种最low的方式啊。来,给你来点空格试一试。那这回就行了,行,能显示就行了。OK吧,行,刚才我说到了一个话题是吧,HTML我们还得找到一些这种话题,对不对,这个我有。
我来说两句