00:03
啊来接着往后讲,呃,下一个话题我们还是来说这个处理模型数据,那么刚刚呢,我们是讲的这个model under美,那么接下来再来给大家去说一下处理模型数据的第二种方式,就是我们的map或者是我们的model啊,这地方有我们这个map,然后呢,也有我们这个model啊这两种类型都是可以的,那么其实呃呢,在内部呢,呃,使用了一个model啊这个接口来去存储我们的模型数据。那么具体的使用步骤呢,就是我们可以在我们的请求处理方法中,诶,在行参中呢,去声明map类型的一个行参,或者是model类型的一个行参,然后呢,我们再把这个模型数据呢,放到他们这个里面,那么他们就可以帮我们进行一个处理了。啊,说这个特别简单啊,我们直接来给大家去用一下啊,好回到我们的开发工具中,然后呢,呃,现在我们把这个debug断点,这个调试停掉啊,停掉以后呢,我们切回到我们的啊开发的这个视图啊,然后呢,我们在index在最终的再去写上一个。
01:08
好,Rap等于TS我们这个model,好吧,来,我们先来测试map吧,啊先来测试map啊,测试我们的map啊,然后呢,回到我们的这个handle中,我们再去写上一个方法啊,测试我们的map,那我们来看一下啊,啊这个的话还是一个字符上的返回值tests我们的map,那么这个map是怎么用的呢?好,它是用于我们方法的行参的,因此啊,我们需要这么来用啊,TS我们的map,我们需要在这里面呢,直接去声明一个麦类型的一个行参,Key是string类型的,Value是object Jack类型的,把它声明到这就可以了,那么将来Mac再去调用我们的这个方法的时候,底层去调这个方法的时候,他会分析到你需要用到一个map,那么他就会在底层给你啊创建好一。
02:08
一个诶,Map类型的对象给你传到这,用于存储我们的模型数据,明白了吧,所以说这个地方我们直接来,比如说我也有一个模型数据叫什么呀,我叫password,等于123456,好,这是我的模型数据,那我怎么去存储这个模型数据呢?我们直接map.put key就是pass,我value就是123456,这就可以了,简单吗?简单吧,然后呢,最终的话呢,我也希望去往我的success页面,那么现在你用称的是一个字符串,所以说呢,我们就可以直接成一个success就可以了。能明白了吗?直接惹着它就可以了啊,好吧,那么他会呢,来到我们的success页面,那么在这个页面中呢,我们来去取一下这个数据,先看看能不能取得到啊,Passord,好,那我认为呢,它还是放到这个request里面了,所以说呢,我依旧加上我们的request SCO呀,哎,Password好,把它写到这。
03:12
那么接下来我们就来看一下我能不能取得到它,然后呢,我们再来分析它具体的一个执行过程是什么啊好,再来跑一下。OK,来点一下啊,Test map走一下,哎,你看这个能不能取得到,可以吧,那么既然能取得到,而且我也是从水快速的去取的,那这个位置其实我就又可以有一个什么了,猜测了。是吧,怎么猜测呢?就是呃,MVC好,呃,会把什么呀,会把这个map中的模型数据啊,也会什么呀,存放到我们的request的预对象中,对吧?这又是我的一个猜测。
04:06
能能明白吧,啊,那我们就来看看我们这个猜测到底对不对啊,我们这也也要去看一下它底层的一个执行过程来吧,那我们还是在这个success这个位置呢,加上一个断点,加上断点以后呢,注意我现在呢,再去debug启动一下,其实这个过程我们就压根不需要去看那么多,只要看一两步结论就出来了。来,我把它停掉啊。停掉停掉,我们给他debug启动一下。我。好,启动以后呢,我们再来访问上一次啊,回去你看了啊,我来点一下走好,他也询问我们进入到这个debug视图,那当然yes,进来,进来以后你发现他直接停到的是我们dispa so的九百四十五行,大家还记不记得这一行是在干嘛?
05:02
是不是调用我们的处理器啊,对吧?哦,为什么这一次停到这个位置呢?因为我刚才是不是在这个位置加上断点了呀,对吧,那么理应代码是先要执行这的,所以说呢,它就停到这儿好,那么其实我们会发现请求处理方法呢,都是统一由九百四十五行开始去调用的。对不对?OK,那么现在问题就来了,你去调用我的请求处理方法,这个没啥疑问,但是你调用完以后,你接收回来的是一个MV,这我有是有疑问的,为什么有疑问呢?你来看,刚才我给你返回的就是一个model安哟,我是能匹配上的,但是现在我给你返回的是一个字符串,你字符串怎么能通过一个model都安尾来去接收呢?是吧?诶所以说我们带着这个疑问呢,我们尝试着让这个代码去往下走上一行,你看走一行来到我们的具体的方法里面了吧,是不是掉到我们这个方法了,掉到这个方法以后呢?来吧,我们断点了,再让他往后走一下,你看就来到我们的959行,是不是开始处理结果了,那现在我们就来看看,诶这个位置它拿到的结果是什么啊,我们把鼠标搁上去,我们来看看它确实是一个model安的尾对象,而这个model and对象里面有什么呢?诶,第一个有的就是我们的视图名字叫做success,看到没有,另外一个我们刚刚的模型数据,它也在这个里面,你看到没有?
06:37
我放到谁里面了,Map里面吧,但是呢,最终它要放到什么地方了,放到猫端里面看到了吗?哎,所以说呢,我们只需要把这个位置它怎么处理的搞明白,那么其实下面的过程你还要去看吗?是不是都是一个model安北的处理啊,一模一样吧,哎,就不用再去看了,好,那我来给大家去解释这个位置它怎么处理的,就是破MVC在调用完你的请求处理方法以后,不管你的请求处理方法返回的是什么数据,都会封装成一个model and对象,它会帮你自动做一个封装,都会处理成一个model and对象,最后再给它返回到这个位置。所以说诶,我们在使用的时候,我们可以有model and,可以有map,可以有一会要给大家去讲的model,但是最终他在处理之前都会把这些数据呢给你封装到一个model and中。
07:38
明白了吗?所以说呢,这个位置我们就不用再去往后看了,我们回到这,我们不仅可以把这个猜测变成一个结论,还可以再多出一个结论了,什么结论呢?注意啊,记住了啊,就是MVC,呃,在什么呀,调用完请求处理方法后。
08:04
啊啊,不管这个方法的返回值是什么类型是吧?啊,都会处理成一个model and view对象,为什么我敢这么说呢?因为大家来看一下,我们从代码的这个角度上来分析一下,你这个代码就是写死的,能不能变啊,不能变码,那么从代码这个写的编写的这个角度上看,我就希望调用完你的请求处理方法后,就拿到一个model and维维有对象,那你想一想,我不给你返回model and对象,那么你是不是自己去处理啊?能明白吗?能听懂这个意思吗?嗯,对吧,所以说你就记住这个结论,他在调用完这个请求处理方法以后,诶,不管你返回的是什么数据,他最终呢,都会处理成一个model and的对象,如果他要不这么干的话呢,那么这个代码他就执行不下去了,你看一下他能执行下去吗?这个地方。
09:06
不行了,听懂了吗?OK,所以说呢,啊,为什么我敢这么说呢?啊,你就什么去参考我们的好参考我们这个Dis solid的什么呀,945号是吧,我把好好的告诉你啊,这个你别告诉我老师,我找不着能找到吗?这个你能找到吗?韩号都告诉你了,你有啥找不着的呀?是吧,OK,所以说呢,大家一定要注意啊,这个结论我们也要把它记住好,所以说呢,哎,这个地方我们既给大家去讲了map的一个用法,然后呢,又给大家去说了一下,另外一个结论就是它处理完成以后呢,都会诶处理成一个model and钮个对象,听懂了吧?好,来把这个分析完以后呢,我们最后呢,再来看这个地方,呃,为什么我们刚刚说到这个map也是可以的,这个model也是可以的呢,那我们就得具体看一下你给我的这个map到底是一个什么类型的,所以说呢,大家注意,我在这呢,就要输出一个东西啊,就是map掉get class掉get name,我需要看一下你给我的这个map到底是一个什么类型的啊,我们来看看。
10:23
好吧,那这个我们就不需要再bug了,我们直接啊启动就行了啊来回到这,我们把它启动一下,点它啊启动。好,启动以后呢,我们再来访问一下啊,我们来到这个位置访问一下回去。好,来访问,大家来看一下,呃,他给我们的类型呢,是这样一个类型,叫做什么班ing aware model map,行吧,我拷贝过来,好,这是它给我们的一个类型,那么我们现在呢,就顺着这个类型呢去找一找啊,它的顶层都是什么啊,斑ing v model map行来CT shift t,我们找到斑丁model map,我们看的是这个MVC02里面的啊,点击OK进来,好希望我们加上一个包,那我们就给它去加上。
11:23
好,找到我们的这个包啊,来就是它打开OK是吧,那我们现在来看,首先呢,它继承了一个extending的model map,看到没有,再来往上翻,然后呢,我们就能看到,注意它去实现了一个叫做model接口,你看到没有?看到没有对吧,为什么我说model类型也是可以的呢?那就是因为它这个extending的model map,或者说我们刚刚看的这个ing model map,它会实现这个model接口的。听懂了吗?它会实现这个model接口的,而注意我们刚刚是不是看过这个model map,它是不是会继承link的哈行map啊,而这个上面呢,又实现了我们的map接口,看到没有,也就意味着现在我的这个finding model map既实现了map接口,又实现了model接口,那么您说一下我用哪种是不是都是可以的呀?
12:23
看明白了吗?所以说呢,诶关系呢,就在就在这摆着呢啊,我们是能直接看得懂的,来接下来我们就来给大家去演示一下我们的model,它是怎么去用的,Map你应该都会了,就这么简单。是吧,那么接下来我们顺带的给这个把这个model呢,也来给大家去演示一下啊好。
我来说两句