00:00
然后下面啊,咱就开始开发里面这个相关的接口部分了,那这接口怎么做呢?我强调啊,首先呢啊,其实这里边我这个课件中有个过程啊,但是我上课中因为习惯嘛,可能有时候写的顺序跟它稍微有点区别啊,但是东西肯都是这些东西,那这里边啊,我说一下怎么做,首先咱们现在打开这个CTRL,在CTRL里边呢,现在我们先写第一个基本功能。我们写一下啊,比如第一个呢,咱就为了测试一下咱这个环境做一个最简单功能,做什么功能呢,大家看这表里边,你注意啊,就是我们现在。大家看这个表里边,目前它是不是有啊,就是有很多数据嘛,所以咱第一个功能我们做的就是先查询这个讲师表中的所有数据,把这个做到啊,就是咱们直接做个所有数据的这么一个查询操作啊,这个啊是咱们做到的啊,那这个怎么做,给大家写一下啊,首先咱看这个controller。
01:08
不说各位是否记得啊,应该是咱在框架阶段学到的第一个,它叫瑞controller,这里边有个注底。啊,那这注解我要特别说一下啊,不知道各位是否记得这个注解啊,叫瑞controller,那这注解什么意思呢?咱们点去看一下啊。啊,我强调啊,第一次我们说这个给大家说的详细一点,然后后面这些我们就直接用了啊,然后咱看这叫瑞controller,它的含义是什么,咱主要看两个注解,一个叫controller,一个叫response body啊,然后controller什么意思,就是把这个创建交给文进管理,还有一个叫response body,看这个词。Response是不是有响应意思啊,Body是不是有体的意思啊,这是什么意思呢?它就表示这个里边的内容需要返回数据,而它返回肯定是返一个叫A存数据啊,主要这两个重点,一个是交易spring管理出来对象,一个是返回一个data数据,所以咱家写个瑞CTR的,因为刚才我提到我们接口都是返回这的数据。
02:17
啊,这朱姐知道,这里边还有一个叫request mapping,是咱们最后访问那个路径啊,咱一会儿也防到。所以咱们这个做了一个说明,那说完之后往下来做啊,那怎么做呢,给大家强调。首先按照咱们的开发过程,C是不是要去调S中的方法呀,那咱怎么做?这里说明啊,咱是不是要把那个service先给它注入进来呀,就是在control中要注入service,那怎么注入写一下啊,这里边有一个注解,各位应该都知道叫auto,然后咱加一个叫private,咱们看一下那个S名字,它叫做这个edu teacher service,我把这个注进来啊,用auto y最后注入C中注service。
03:08
然后里边可能注入map,但是我强调啊,咱看一下这个service啊,大家仔细看。你注意啊,Service它是不是又继承了一个接口叫I service,然后你看这个时现类中是不是也继承一个类呀,所以我强调这什么意思啊,也就是说呢,咱们在讲那个买杯的plus的时候呢,当时我们演示的应该只是演示这个map部分。我说各位是否记得啊贝map,但是其实在MP中的,他把service也给咱做了封装,包括你看这里边有一个叫service m PL,这也是MP中那个方法,他把这里边的过程也做了封装,包括它S跟map的过程,其实都不需要咱们写了,所以咱们只需要在里边做个调用可以了,包括service里边也有这个方法,Map中也有方法。然后他到threats去调micro过程,在它底层做了一个封装啊,咱们看一下啊,大家看这行代码,就是它原代码中的,你看o to where是不是注入,然后注入的是不是这个map,就是它把threes到map过程也帮咱做到了,用的名字叫base map,所以咱们只需要写control表service就足够了,Service map过程都给咱们做了啊,不需要咱去写。
04:26
啊,那咱们来往下写一下我们的具体代码,因为咱要写的是查所有,然后往下来做。在这过程中呢,有这么一个东西啊,也是咱们在框架阶段学到的,就是有一种风格叫这个。瑞士的风格。啊瑞的风格不是各位是否记得啊,也就是说你的每种操作用到不同的这种就是请求方式或者提交方式,比如说咱们现在做查询。大家要知道啊,查询一般用的什么调方式。
05:00
是不是一个get提交,然后你的添加,你们用post修改,用put删除,是不是用delete,就是每种那种操作有不同的挑方式,这是一种风格,叫瑞风格啊,但是不是说一定得用这种提方式,如果查询就用POS也没有错啊,只是说我们一般遵循这种风格,那下面咱查询,比如就写一个get提交,那怎么做我写下啊,咱就直接写这个叫get mapping表示用get提交,或者说里边还要加个方式,比如说我们写一个post,包括这个。比里头。啊,包括有一个叫put,它有不同的方式,那我们查询咱写个get啊,这是一个啊,然后在get里边我给它起个名字,比如叫这个。呃,就叫find的O啊,就是它所有啊,这是咱写方法,然后写完之后,下面我们写一下啊,Public咱这个方法,比如我就叫这个。Find teacher。
06:00
啊,大家写这么一个结构啊,但是这里边各位注意啊,因为咱们现在要查表中的所有记录,而查所有就是如果说你查一条记录,那返回的是一个对象嘛,如果你查所有记录,返回的是不是很多的对象,也就是一个,你应该是一个集合的形式,所以咱现在在里边返回值中我就加上一个。历史即合啊,它的泛型就是这个实体类,叫这个edu teacher。啊,这个大家给他写上啊,这是我们写的这么一个。方法啊,然后写完之后,咱下面就来调用,那么就是调用service里边的方法,然后实现查询所有的这么一个操作,那怎么调啊,咱之前是学那个map,但是S瑞跟它一样,那我们直接调一下啊,在瑞里边也有它的方法,因为service咱刚才看到它也继承了这个内容,然后里边也有增删改方法,只是方法名字跟map稍微有点不一样,内容都一样,用法都一样。
07:07
啊,那我们找一个查错方法来找一个啊。咱里边应该叫select什么什么,但是它里边不是select,它的方法是什么。大家看这个。就是它叫做list方法,然后咱写例子里边要传个rapper那个条件,但是目前暂时没有,所以咱们先给他写一个空。然后写完之后这个方法返回到就是一个历子集合啊,就是它最后咱们把这个历子集合直接做一个铝退,所以这个就是我们写的一个最基本的一个接口啊,就是ctrler调wi调map,只wi map过程MYMP中帮咱封装了,咱只需要掉就可以了,然后在里边用get提交掉色的方法返回立子集合,给它最终做个re return。啊,主要就是这么一个基本的一个开发啊,这属于一个最基本的一个功能,我把这个啊给大家我先截过来啊。
08:05
就这个代码。然后这个写完之后啊,通过它大家能够啊快速知道这么一个基本过程啊,比如说你不敢做再复杂,它的结构肯定是这个结构,首先我们有一个control里边注入service,然后service调方法调动功能,但是你的具体方法,不管你是。添加、修改、删除、查询,每种方式用不同的提交方式,包你的方法,用不同名字,最后返回的结果。这个啊,我们就做到了啊,就是写这个CTRL部分。啊,这里标注一下啊,就是第一个。创建CTRL。然后这个创建之后,咱下面啊还要继续往下做,因为目前呢,咱这项目肯定还是少一些东西的。那我们下面做什么呢?大家注意啊,首先得注意咱现在啊,这个工程其实也是按照boot那个结构创建的,虽然咱建是ma,但是本质上其实还是boot,那咱BOO工程它是不是要有一个叫启动内应。
09:06
包括有配置文件,配置文件咱写过了,那我下面在里边咱就创建一个启动类。我写一下啊,第二步创建我们那个工程道。启动类,那我在里边写下啊,咱就注意啊,启动类的位置,你不要再建个包创垫,要放到这些包的最外层啊,之前我也一直在强调这个问题啊,那比如说咱建个行用类名字随便起啊,我就叫edu,也就叫application。这是一个启动类,然后在情类里边我们加上一个注解,应该叫这个不OB,在这位置加上一个main方法。然后main方法中写上就是它那个run的那个执行的方法啊,这个我就直接复制过来了啊,就这个啊。Spring spring.right然后它那个执行的方法啊,主要这么一个启动类。
10:03
这个我们肯定是需要的。我把这个啊展现给他拿过来啊。然后放到我们的笔中啊,然后这个启动类创建之后呢,注意啊,咱这个代码并没有完在里边呢,咱应该还需要有东西。我说各位是否记得啊,是咱在买贝的第一天说到的。还需要什么东西呢?大家看啊,我这里边service无所谓,因为它有接口实验类,这个肯定没有问题,但你看我的map是不是只有接口,它没有实验类,它只有一个对应的配置文件,所以咱们需要写一个注解叫map看,让他去扫描到你的map这个接口啊,咱需要加一个卡的注解,那这注解我之前提到过,你可以加到启动类上面,但是咱们更建议写个配置类,然后加这个注解。啊,所以咱们还要有第三步操作。
11:01
我小的位置啊,第三步。咱要创建一个配置类啊,然后配置那个就是map那个扫描和它的一些其他的这么一些内容,我们把它都统一写到配置内容。那咱们啊,给他就最终写下啊。那配置内为了明显我在里边呢,再建个包,我们叫这个。Con。啊,这么一个包啊。然后记完之后在里边呢,咱建个类,比如这个类我就叫做edu。Conig配置类写法比较固定啊,首先加个注解叫这个configuration,然后咱们加上我们要用这个叫map,看加上你那个map那个就是interface这么一个包的地址啊,就这个地址把它需要给他拿过来啊,当然它后面比如做什么分页啊,逻辑删除等等,里边还有加插件啊,咱先把这个写出来。
12:01
这是一个叫配置类。啊,这一步肯定是必须要有的。这个啊,给大家复制过来。所以说啊,咱们写到这里,这个基本的一个结构应该就可以了啊,当然你可以再加个什么性能测试这个插件啊,这个我就不配置,各位给他配置一下啊,因为这个这个跟我们的功能没有什么关系啊,主要的核心部分这里边应该我们都写到了啊,主要就是这些,然后咱们最终看一遍啊,最后咱再测试。咱看到啊,首先我们做法就是第一部分。代码生成器,把代码生成了,生成之后在CTRL里边咱们首先注入service,然后调方法得到结果,因为service map中的方法MP中给咱们都封装的,咱直接掉就可以了,它里边是这个名字,换了一下叫list,最终把它屡退。啊,这是controller,然后写完之后咱肯定有配置文件,包括咱一会儿用8001进行访问啊,数据库不要写错,除了它之外,咱写个启动类,就是写一个不解,写一个map方法,然后除了它之外与map是一个interface接口,咱需要加个配置类,在配置类中加一个叫map,看加上你map那个包的名字,这个不要写错啊,写错它会报错。
13:21
然后这些都选之后,咱最后就可以做一个最终的测试了啊,最后再来测试。那我来写一下啊,就是。第四个啊。最终的测试,那我们怎么测试呢?给大家说一下啊,首先第一个咱们的项目是不是要。启动起来呀,因为咱们项目使用的端口号是8001,所以我们要用801端口最终进行访问啊,那我们现在启动一下啊,怎么启动给大家演示啊,咱就直接啊。打开这个启动类就是它,然后你右键因为是main方法了,轮boot工程入口就是main方法,用main方法启动,然后它在启动过程中就会占用里面这个叫801端口,用这个端口把它可以启动起来,那咱下面启动一下啊,我点右键直接启动。
14:14
咱们看一下这个效果啊。当然第一次会卖点,因为第一次嘛,它要编译代码,就是把我们里面这些Java代码都编译成class啊,它稍微卖点,咱们多等一会儿,然后后面就会变快了。这是他的启动这个日志啊。咱们看啊,现在应该成功了,然后怎么看成功,咱看最后一行啊,当你看到比如这行代码,就这行提示说这个tomcat已经在801端口启动了,它现在花费了这么多时间启动了你这个工程,这样就表示这个已经成功了啊,所以咱们完成了一个启动。啊,就最终看到这么一个现象啊。这各位啊,给定要知道,然后在启的时候呢,有一个细节上节课我提到了,就是各位在写的时候呢,比如你从我课件中复制依赖,咱们先把我们的上面这些依赖先给它注掉,就在threat里边的这些依赖先注掉,因为目前这功能咱没有做到,如果你不注掉它会报错,后面咱洗完之后这些再打开啊,这个细节各位注意一下,先给它注掉。
15:20
然后现在就已经启用成功了啊,咱项目就可以了,证明启动没有问题,项目环境对了,然后这些都对之后,咱最后就来访问一下咱们这个方法啊,把这个做个访问,那怎么访问呢。给大家说一下啊。因为咱们现在通过就是801启动了,所以咱一会儿肯定要通过浏览器对它做个访问。那怎么访问我这里啊,我就写到这个位置啊。它这里边呢,肯定有这么一个,就是访问的一个地址,那地址是什么呢?给大家写的完全点啊,就是加一个HTP冒号杠杠,因为咱是本地嘛,加local house,或者加1270.1,或者加你的IP,咱的端口号是8001,然后加完之后,后面加什么呢?大家看这个地址的构成啊,第一部分你加上类上边这个地址就是request mapping中的地址。
16:19
然后加完之后再加个斜线,加上你方法上面这个名字,比如咱叫泛欧,这样的话就构成了咱的访问地址啊,这需要加上,然后加的时候有个细节啊,之前同意也一直在问这个问题,应该是各位在框架卷学得到什么细节呢?就是这位置。这个斜杠到底加不加这个注意啊,加不加都对啊,这没有什么影响啊,但一般就很多人不习惯加嘛,加上也没有错啊,但是这里边需要加上啊,所以咱们访问的就这个地址,通过这个local house 801加上你这个e service teacher,加上这个名字,这些名字都是随便起的。啊,就是你写的话,正常起名可以不要加头符号,咱正常写个单词就可以了,然后这样的话,这个是我们的访问地址啊。
17:08
那这个说完之后,咱把地址我就直接复制到浏览器中,比如咱们一回车大家看效果。啊,咱看效果啊,这效果是什么呢?你注意啊,刚才我提到了这个注解,它让咱们就是把这个controller交给死人管理,然后它是不是要返回这层数据,所以现在反数据是什么?就是把这个list集合转换成了这层数据,然后给你做了返回,这一段就是一段ason数据啊,比如你看这一个中括号数组形式嘛,里边有多个这个数据,比如咱们表中数据用son形式做了返回啊,最终咱看到的就是。这么一个结果,我就截一部分啊。所以咱们啊,通过它我们就验证出来了,咱们这个环境,包括这个过程应该就正确了。
18:00
所以这是我们做的一个基本的一个开发过程啊,就是各位啊,按照这过程能给他做到,我这个每步应该都演示到了,包括课件中每步应该都有啊,包括你知道还是框架阶段学过的啊这些的特点。刚才我也都做了一个解释啊,所以现在啊,咱就把这个最基本这个功能查询所有讲师完成了,通过这个功能让大家先知道我们这个基本的过程该怎么去做。啊,这个啊,我们就做了一个演示啊。
我来说两句