00:00
好,然后下面呢,那我们来看咱们的这个request mapping呢,然后它的第二个属性,好,然后第二个属性呢,是咱们的method的属性,那method的属性是什么意思呀,是不是叫做方法对不对?哎,这个method的属性跟咱们的什么时候的属性用的是是这个表示的意思是一样的呢,就咱们提交表单的时候,里面是不是有一个method属性啊,哎,它表示的是什么意思啊,请求方式,所以说在这个地方,咱们的这个注解的method的属性是通过什么内容,然后去匹配请求的。是通过我们当前请求的请求方式来匹配的,OK吧,好,那咱们刚才也说了,你至少要有Y流属性,通过请求地址匹配,大家说是不是,也就是说每一次咱们在匹配请求的时候呢,Y流是必不可少的,那咱们现在呢,又讲了method的属性,那所以大家想想,你把这两个属性一块去用的时候,那它表示的是什么意思啊,是不是咱们既要来满足我们当前的value流属性所对应的请求地址,还要满足我们当前的method的属性,所设置的请求方式能听懂不?好,OK啊,行,这个大家要注意啊,好,所以说记好request mapping注解,你设置的属性越多,那它要满足的条件就越多,所以说它所匹配的请求就越精确,能听懂吧,哎,所匹配的请求就越精确啊好,OK,下面呢,大家来看一下,那这个method。
01:37
它的属性,它怎么去匹配咱们的请求方式,那首先大家要知道咱们常用的请求方式有几种啊两种,一种是get,一种是post,对吧?就比如说我们目前为止,咱们从浏览器发送请求的请求方式不是也只能是get和post是不是是吧?好,那get跟post有什么区别啊?啊来大家回顾一下这个问题啊,Get跟post有什么区别啊,首先那咱们的get请求的话,每当我们提交请求参数,这个请求参数是不是就会拼接在咱们的请求地址后边,对不对,对吧?好,然后以问号进行拼接,后边是哎,请求参数名等于请求参数值and请求参数名等于请求参数值对不对,对吧?其实就是咱们表单元素的内等于value是不是是吧?啊行,那如果咱们现在用的是。
02:37
Bos的请求的话,大家说这种方式它会把咱们的请求参数放在哪啊?会把它拼接在咱们的请求地址后面吗?不会,它会把它放在哪儿?哎,会把它放在咱们的请求体中,所以说get请求有请求体吗?没有,只有postose的请求有请求体,OK吧?但是大家同样也要注意一个问题,哪怕它把当前的请求参数放在了咱们的请求题里面,它的格式也还是name等于value and name等于value,能听懂吧?好啊,行,那还有啥区别?
03:14
啊get啊,相对而言不是很安全,POS的安全,那既然不安全,那咱们get传输的速度就比较快,是不是因为它是伴随着咱们的请求地址传过去的是不是啊好,然后呢,咱们的post呢,然后它传输的速度啊就比较的慢,还有呢,就是咱们的get咋的了,它传输的数据量有限,然后但是咱们的post的传输的数据量就比较大,可以认为是无限制的,对不对,对吧,然后再往后。大家记不记得这个文件啊,大家没讲过文件上传是不是啊,对吧,但是大家知不知道这个文件上传是不能使用get的,知道不知道。知道不知道文件上传不能使用get,其实这个问题也很简单,你说你文件上传用的get,结果你一上传,你想想他应该怎么上传,那请求参数是要拼接在地址栏里面啊,那你会把文件拼接到地址栏中吗?不会,再说了,如果大家去做一个例子,那我们文件上传咱们是不是应该用的是一个type等于能听懂不能听懂不叫type等于fail,什么意思啊?文件域有印象吧?好,大家可以自己试一下,你设置一个文件域,选择一张图片,然后点击提交,你会发现如果你用的是请求方式get的话,它拼接到地址栏中的可不是你的文件,它拼接到地址栏中的是什么?你的文件名能听懂不?你的文件压根就提交不到服务器中,知道吧?所以说咱们在上传文件的时候,咱们只能用啥,只能用POS的。
04:57
而且还需要再设置一个其他的属性,这个咱们等到咱们讲文件上传的时候再说OK吧,啊行,那其实咱们常用的属性啊,然后还有两种,一种叫做put,一种叫做delete,就比如说咱们马上要学习的这个什么rest对不对,那rest这个东西啊,然后比较着我们常规的这个增删改查的一个请求路径的话,然后它是既要根据咱们的请求路径去匹配请求,还要根据我们的请求方式去匹配,所以说在rest里面,咱们的增删改查就可以来使用一个相同的路径,但是不同的请求方式,比如说咱们的get对应什么功能,查询功能,Post对应什么功能,添加delete方式对应删除,而put对应修改这样的啊好,这个rest里面其实就是来使用了我们当前咱们的request mapping的value和。
05:57
Method的同时去匹配请求,能听懂吧?哎,同时去匹配请求啊好,那我们下面咱们就来测试一下method的属性,那我先问大家一个问题,大家说如果我不设置method是啥意思?
06:11
默认的?啥是默认的?啊,如果我不设置method的话,然后它是什么意思啊。默认的就只能匹配get请求呗,是不是啊?嗯,是不是啊,好,那咱们这样啊,大家看好,那我们当前在咱们的index.html里面,那这两种超链接所发送的应该都是get请求,对不对,对吧?那我们下面咱们来设置一个form母表单,然后action等于谁?那我们要想让这个F呢?然后同样被我们的C马去解析,那我们是不是也叫加上TH,对不对,对吧,这个地方A一个大括号,然后里面一个斜线,那如果我现在我所发送的这个请求要想被我们当前的这个请求映射所匹配,那咱们的请求地址是不是可以是它也可以是它能看懂不?哎,好,OK,来吧,咱们来写一下,那在这咱们就写简单一点就叫test呗,可不可以啊,可以吧,好,然后那我们在这咱们再设置一个method的设置请求方式为post,能看懂吗?好,然后这个地方。
07:26
那我们直接就来写一个submit提交按钮,可不可以啊,可以吧,那你用写它的这个value吗?不需要,因为咱们的submit按钮它有默认的value流属性值,就是提交是不是。是不是吗?是吧,好,那当当然咱们设置一下呗,行不行?来咱们测试request mapping注解的什么属性啊,应该是me hod,应该是method的属性,咱们当前所使用的请求方式是post,能看懂吧?哎,好,那既然这样,那我就再写一个测试它的什么属性,Master的属性,然后咱们所使用的请求方式为get OK吧,好,OK,来下面大家看看啊,我现在有没有设置method的属性啊?
08:17
哎,大家看我设置method的属性了吗?没有,那没有是什么意思呢?是不是像大家说的,它只能够匹配get请求方式的请求呢?来看好啊。刷新,然后下面咱们来点击这个,大家看好,这就不用点了,那咱们上面这俩不都是get请求吗?对不对?点击好使不好使,那我们再来看它,这是不是posts的请求啊,点击之后大家看好使不好使,那说明啥?那说明如果咱们不设置method的属性,那不就是不以method的属性为条件吗?不以请求方式为条件吗?那也就是说任何的请求方式都能够匹配,能听懂吗?能听懂吧?哎,任何的请求方式都能够匹配,那但是当我们加上之后,它还好使不不好使,刚好我们在这写个method,大家注意看它的值什么意思啊,也是一个数组,字符串类型的数组,那说明什么?
09:19
那说明什么?这一个请求映射是不是可以来处理多种请求方式的请求能听懂吧,但是前提是什么?你的value必须得能够匹配成功,能听懂吧,你的value必须得能匹配成功啊,大家注意必须要有value,所以说咱们首先你要满足的就是请求地址能够匹配才能够去。查看我们当前咱们的请求方式是否匹配,OK吧,好啊,行,来一个大括号,怎么写呢?大家看好咱们的method的值啊,我们要想写的话,在这个地方有一个东西,然后叫做request method这个东西大家看这是一个major,看到了没?看到了吧?这里面一共有几个词呀,Get head post put part part,然后delete options,还有trees,咱们以后常用的get post post delete,能看懂吧?嗯,好,OK啊,行,那比如说我在这大家看好我写了一个什么,写了一个get,那这说明啥?说明我们当前的请求地址可以是它,也可以是它,但是咱们的请求方式必须得是get,能听懂吗?好,OK,来,下面咱们来重新部署,来看一下效果啊。
10:41
井控一下。来,所以说这个时候谁行谁不行啊,这是不是get点击之后好使,这好使不?因该不太好使吧,因为咱们当前大家想想请求地址确实能匹配,但是我们的请求映射支持不支持POS的请求啊,不支持,所以说当我们点击之后,大家看记好这个报的错啊,叫做request method post not supported什么意思啊,叫做请求方式post不被支持,能听懂吧?所以大家以后只要看到这个错,那就一定是我们当前请求的请求方式,不是我们当前的请求映射所支持的请求方式,能听懂吧?那大家说,那我现在既要让我们的请求映射支持get请求,又要让它支持post请求,怎么写啊,逗号,然后request method.post。
11:45
能看懂吗?好,然后下面那我们在这来重新部署,大家来看啊。好,咱们来刷新刷新。刷新OK啊,点击好使,再点好使不好使好使没问题吧,OK啊,这个就是咱们的method的属性,然后method的属性是通过请求的请求方式来匹配请求,OK吧,嗯。
我来说两句