00:01
I店里面的插件,然后呢,嗯,咱们要学会去使用所使用这个I点插件之后呢,可以让。咱们这个开发呢,变得更快啊,因为点它本来就是呃,一个开发神器,就使用I点进行开发的话呢,会让我们代码写的很快的,但是如果说我们把这个插件再加上去之后呢,啊,就相当于是如虎添翼,让我们这个编程呢变得更加的方便。所以说今天就给大家。首先介绍几个,嗯,常用的非常好用的这个ID插件啊,然后这个插件首先来说一下怎么去安装。这插件的话呢,非常简单,就是我们打开这个里边有一个plugins有这么一个选项,然后在这的话,大家可以看到各种各样的插件啊,它这边的话就相当于是一个应用商店一样的。对对,相当于应用商店,就跟我们这个手机APP啊,你要下载一个APP的话,你去你的应用商店里边去找,这个是一样的,D里边已经内嵌了一个这样一个应用商店,你需要什么插件,直接在这搜索就可以了啊,可以看到这个就是它当前的一些插件。
01:08
这这是当前一些插件啊,你需要哪个就直接在这搜索就可以了,然后这边有一个TE的指的什么呢?指的就是我当前已经安装过的插件,所以说这些东西都是我安装的插件啊,这些插件呃是我比用的比较多的,而且呢,就是我推荐给大家的,你们定要去用,用好之后呢,让我们写代码的就更加的方便了。所以说怎么去使用这个插件非常简单,我们这个插件的安装有两种,两种方式。插件安装有两种方式,第一种的话就是直接在线安装。第二种的话是离线安装。在线安装的话,就直接在这里搜索,搜索你的你要的插件,然后呢,直接一键安装就OK了啊,比如说我们来搜一个long book。对吧,这样的话我们可以找到这个long啊,你看第一个第一个它的图标是这样一个辣椒对吧,这是longb插件,然后你要安装的话,直接点击这个in就可以了,因为我是安装过的嘛,所以说我这边是已经安装过的,像下面这些东西都没有安装,直接点击。
02:14
安装它就会自动下载,然后安装,然后呢,你只需要重启你的点它就生效了,对吧,这是第一种方式,在线安装非常的简单。啊,直接。直接在这个应用商店当中去搜索,然后直接点击下载就OK了啊。第二种的话呢,是离线安装,如果说你的网络不是特别好,就连不上这个。插件的应用工厂的话怎么办呢?没关系,我们也可以离线安装啊,这边的话已经把这个呃安装包呢给大家准备好了,那这个这个就是它的安装包,那这个安装包的话,其实就是呃一些加包嘛啊,我们可以直接从点当中呢,把本地的这个加包导进去,它也会自动安装的,那离线安装怎么去操作呢?点击这边这个按钮,然后有一个叫Intel f from Dis对吧,从你的本地硬盘去安装,然后呢,去找到你的这个路径就可以了,直接去安装就可以了,两种方式都行。
03:08
所以说这会儿这个东西我也会分享给你们的,如果说你的网络不好,直接离线安装就可以了啊好。这是它的安装非常的简单,那接下来的话,我们就来看这个I件里里边几个比较好用的这个插件,第一个的话。当然就是。什么呢?我们的B。对吧。Longb这个插件可以用来干嘛呢?它可以用来帮助我们去生成实体类里边的。生成实体类里边的,呃,这些get set方法,以及什么兔子论方法呀,对吧,E方法啊,包括构造器,它也可以帮助我们去生成,对吧,那我们来看一下。因为这个插件我已经装好了啊,所以说我就不再演示怎么去装了,大家直接去呃用呃这个在线或者离线这个方式安装好就OK了啊。
04:00
那比如说我们这边呢,来创建一个。这个实体类。我来创建account对吧,那个account创建好之后呢,你就需要去创建它的这个常用变量,比如说ID。Name。H,对吧,好,那接下来干嘛呢?接下来是不是创建它的set get方法。对不对,我们可以看到啊,当前我们这个account里边是不是有三个成员变量,然后的话我们需要创建它的set get的方法啊,那你可以用用idea的这样一个呃,代码生成器去创建。对吧,包括什么初始论方法啊,这些东西是不是都要去写,对不对,但是像这些工作呢,其实是。啊,重复性的工作,而且没有什么技术含量对不对,所以说我们就可以用用插件来搞定它,Logb就是这样一个插件啊,所以呢,我们把logb插件装好之后呢,我们不能说直接去用啊,因为的话呢,还需要我们去引入它的依赖,所以说我们。
05:00
需要在这个没用工程当中啊,我们去引入这个老B的一个依赖,把它引进来之后再去使用,像其他的插件就不用去引这个,呃依赖了,对吧,Log比较特殊,它需要去引好,引出来之后的话呢,这边怎么去用,直接去通过注解的方式,比如我们给它加一个data。对吧,加data之后的话,它会自动去生成它的set get的方法,我们可以来试试一下啊,你看account。我就直接写到它这个类里边了。Account点你看是不是自动就有了,对吧,就不用咱们自己写了啊,包括你通过这也能看出来,你看。我来给你演示一下,如果说我们没有这个对。感是不是只有这三个?但是我把这个data打开之后,你看是不是自动帮助你把这个构造器啊,Get set方法,ES这些方法是不是全部生成了。对不对啊,所以说就longb啊,它是自动的帮助我们去生成实体类里边的set get方法。好,这是第一个,那第二个是什么呢?第二个叫generator。
06:08
对吧,这rate set这样一个插件啊,我把这个给大家记一下这个东西,呃,是自动生成实体类。东的这个,嗯。Get。兔子笨。对吧,东方吧。那么这个generator。Outsider啥意思呢?它跟这个law有点像啊,它是自动补全。这个对象的。Set方法。赛的方法。但是呢,它们两个作用的地方不一样,就long book是作于实体类的,然后generate oretr作用的是我们在在创建这个实体的对对象的时候,我们需要用到它的,对吧?举个例子啊,来回到这儿,比如我就在这写我们的方法。
07:02
那么比如说我们这边创建一个account。那接下来你是不是要开始account.set?对不对,是不是开始set方法account.s什么h account点。Set name一个一个set吧。是不是要一个一个set对不对,那假如说我们这个杠里边假设有十个成员变量,你是不是要写十次对吧,就比较慢啊,像这种重复性的工作,哎,是不是咱们肯定有东西可以去帮助我们去完成的,对吧?Generate outside就干这个事,它就是针对这个account对象呢,去帮助你自动补全它的set方法调用,那怎么用呢?这边我们用快捷键。你把你把你把光标移到这儿,然后摁住这个CTRL加回车,呃,不是ctrl alt加回车啊,Alt加回车L的话,是不是自动去弹出来一个列表。第一个的话叫generateet对吧,No default value是不是就自动帮助你把这个set方法全部补全了。对不对,也可以呢,怎么样呢去呃,因为你这个补全的话呢,啊是alt加回车。
08:05
是al回车,这个这个不是赛,说错了,是alt alt加回车。它就会自动出来的。对不对,是不是自动set方法就出来了啊,也可以怎么样呢,在这种默认值的这个方法。第二个啊,是不是withult value对不对,是不是就自动带一个值,当然这个值是不是就是,呃,根据它的数据来决定的,就是零嘛,然后string是不就是就是就是空。对不对,如果说其他的话就是nu对吧,它就会自动去帮助你补全这些东西啊。所以你看这两个的话呢,呃,有点类似,但是呢还是有区别的,一个呢,是帮助我们实体类生成这个这些方法的,另外一个是在我们使用的时候,帮助我们去补全这个赛的方法啊,它只能补全赛,它都不能去补全其他的,因为。你看这个名字嘛,是不是要生成全部的set。对不对啊,这个。
09:04
这个肯定需要去安装的,这边的话你可以看一下这边都已经装过了啊。Generate对吧,这个需要去安装啊好。但这个的话呢,不需要去引入其他的,依还需要去引入个中入这个的需。啊,这是第二个插件,然后第三个插件是什么呢。叫Jason format。还是跟我们这个试题类相关的这些方法的这个东西是干嘛呢,它可以将这个Jason格式的。Jason格式。的数据转换成。自动。应该这样一说,根据Jason格式的数据,自动生成对应的。实体类。自动生成对应的实体类啊,他可以干这个事情。就是我们这边比如说给他一个Json格式的数据啊,比如说给一个。
10:04
这不格式吗,比如说一。比如说。再比如给一个H。22对不对,这是一个Json格式的数据,那么。我们现在的话呢,使用这个Jason format啊,它就可以自动的根据这种结构是不是自动帮助你生成一个呃,Java的一个类。对吧,它可以自动帮你生成一个加热类啊,我们来看怎么去使用,非常简单。那首先的话呢,你需要去创建一个空的类,比如我叫person。我叫person创建好之后怎么办?哎,直接在这个类当中,我们使用这个还是使用一个快捷键啊,使用这个out。Alt加S,那么就会弹出这个对话框。Alt加S是不是弹出来一个框。这方的一个框对不对,然后我们只需要把咱们刚才写的这个。
11:01
Jason格式的这个结构呢,给它写进去就行了,就说ID。内蒙。The。H。22对不对,这是不是有一个Jason格式数据,然后直接点击OK啊回到这。我们直接点就OK,你看它是不是自动出来这么一个。出来这么一个选项,哎,出来这么一个,这个就是相当于菜单嘛,那这个菜单里边的话,实际上它就对我们刚才那个Jason进行解析啊,这个K和V呢,指的就是你刚才加三里边写那东西,我是是ID等于1NAME test h等于22。对不对,然后你看后面这个data type和field name data type是不是我们要把这个Jason里边的格式转成Java格式,那转成Java格式之后呢,ID是不是得有一个数据类型,所以它是不是自动帮助你识别成int类型了。然后这个是不是string类型,这个是int类型,然后这个field name指的是实体类的这边名称嘛,是不是ID name h对吧?对,然后你这边的话可以选嘛,如果说你不需要这可以把它去掉嘛,它默认是不是全选选选之后我们点OK。
12:06
看是不是自动生成了。对不对,是不是自动按照这种格式帮助你生成一个对应实体类。对不对。当然这个1TEST22这个值它不会附进去的,它只不过会生成一个这样一个注释告诉你,诶这个东西它的一个默认值是一个东西。啊,它它也是自动生成实体类的。啊,这就是Jason format的一个使用,是把这个Jason格式的数据呢,自动给你生成一个对应的实体类。好。接下来还有一个什么呢?是这个,呃,前面几个都是关于实体类的一个使用啊,然后后面的话呢,就是呃,就是可能我们在学习框架的时候。咱们,呃,在学习后面再学习框架的时候呢,我们可能更多的是需要用到这些插件的一个,使用这些插件更多是针对于框架,比如说这个叫针对my bed框架的叫free my balance。Plug free my plugs。它是针对于。
13:09
这个买这个框架。提供的一个插件。对吧,它可以用来干嘛呢?My balance,后面我们要讲的一个OM框架啊,也是目前主流的一个框架,它可以用来干嘛呢?它可以自动。完成我们这个map接口。和maple。点叉庙。之间的这个跳转。对吧,因为我们说买better的框架呢,就是我们会定义很多的这个map接口,然后呢,在这个map点插面里边,我们会定义这个接口对应的这个词后语句嘛,对不对,所以说就等于一个map接口的一个方法,需要对应到一个里边的一个语句,那如果说这个东西太多的话,我们找起来可能不是特别方便啊,那有了这个插件之后呢,就找起来非常方便了,来我们来演示一下。
14:02
咱们来找开,找到一个买bed一个工程,好,你比如说这就是我们的一个map接口,你看这里边是不是有什么翻到啊,翻白D啊,Save这些方法对不对,然后这应。对应的是在这儿的啊,比如说啊翻到翻到的话呢,我对应的就是。是不是这个是他搜索句叫selecting from student对吧,然后find by ID是不是对应的是这个。是不是一个一个对应起来的,对不对,那如果说我们这个接口特别多的话呢,假设我现在诶发现这个东西有问题对吧,我要修改,我是不是还得在这去找对不对,假设我这个东西特别多,是不太好找,很麻烦啊,所以呢,我们把这个插件装上去之后呢,它就可以自动完成这个跳转啊,非常简单。对吧,怎么自动完成呢?你看左边有这样一个箭头。这个是因为我装插件,所以有箭头,如果你不装插件是没有这个箭头的啊,就需要装这个插件。装这个。
15:01
这个free my bad PS啊,这个插件装上去之后就有了,你不装是没有,然后这个箭头可以用来干嘛呢?可以用来点,直接去点,你看比如说点这个啊,走是不是直接就来到这儿。啊,包括你点这个直接就回去了。哎,是不是就直接来到这C了,看光标嘛,点这个是不是直接过来了,所以说它就可以针对于每一个方法到对应的这个SQ语句,它可以自动去完成一个跳转。对吧,你需要看哪一个方法的搜索语句,直接点击自动就跳过来了,所以很方便。对吧,这就是我们说这个free my beds。好。这是关于我们的提供的一个这个插件啊,还有什么呢?还有呃,我们在调试这个rest for接口的时候,一个插件叫做rest for to。Rest for two。Just for。这个插件,这个插件用来干嘛呢?它可以自动显示。
16:00
工程中的。所有。URL接口对吧,同时呢进行测试。同时进行测试。啊,并且呢,提供。这个检索的功能。什么意思呢?就是我们写的这个项目,最终我们肯定会在controller那层呢,去写很多这种rest for的一个接口,对不对,那么我们要进行调试的话呢,是不是就需要去测试你一个CTRL里边的每一个接口。对不对,那么这个差价就是用来帮助你一次性的把这些这些接口全部给你展示出来,让你一次性一目了然看到所有的这个接口,比如说我们打开一个工程啊。那比如说你看我这这里边儿是不是有很多controller。对吧,我们每个CTRL里边是不是都有很多方法。对不对,那你如果说要统一管理的话,你想想这些东西是不是特别麻烦很多很多的对不对,那么我们这个插件呢,你就可以直接把你这个工程里边所有的接口的所有的接口全部给你展示出来,就很方便,对不对,那么就就需要大家去装这个插件啊。
17:08
这个插件你装上去之后。这个插件,嗯,这个two把它装上去之后呢,你会发现你的在右侧这块会出来这么一个按钮。叫rest for to这么一个按钮,然后你只需要把这个东西打开,你可以看到。是不是当前我们这个工程里边所有接口全部给你站出来。对吧。全部给你展示出来,它是根据这个路径来展示的啊,就比如说我们这个接口叫orders list对吧,然后呢,它的这个control这一层叫orders,所以说我这个接口的话就是。Orders什么呢?Orders list你找一下有没有?看到没有,这个东西不就有吗?然后前面呢,它这个是一个get请求,那么我们我们这边就是一个get就G开头的对吧,Post就是P开头的对吧,所以说他会把这个接口全部给你转出来。
18:00
然后每一个啊,就是当前这个工程里边的这些类里边所有接口全部给你展示到这儿,所以就非常的方便,一目了然,包括我们这个传参都可以看到,对吧,需要什么样的类型的参数全部可以看到,所以说你有了它之后呢,你就可以不不再去使用那个postman了啊,直接用这个东西就可以去看到所有的结果,而且它是可以去进行测试的啊,那么我们呃,我我我随便跑一个工程啊,我们来测一下啊,比如我这是一个简单的一个工程。我把这个工程跑起来之后。我把这个工程跑起来之后呢,大家可以看到我们这边rest rest for to对吧,这里边儿因为我只有一个接口嘛,所以说这边你看到一个是不是叫index,是不是跟他映射起来了。看这两个映射了啊,然后我们是可以直接运行的,对不对,直接点击去发送对吧,就可以看到结果,我们是不是返回一个hello SP put返回这么一个内容,这边是不是可以看到。对吧,包括你这边可以选择它的类型,可以选择URL是不是跟postman一样的,对不对,所以用这个工具啊,非常的方便。
19:03
同时的话呢,它还有什么功能呢?它还有个功能就是我们说的可以提供检索的功能。就是你需要去查找某一个这个URL的时候呢,如果说东西太多,你不好找的话呢,怎么办?就你从这儿找也不不是特别方便啊,我们有个快速检索的功能。我们使用的快捷键。最快键的是CTR。CTRL加alt。加斜杠,它就会自动弹出来一个对话框,然后你就可以在对话框里边呢,去输入,你要查找这个UR接口啊,就出来了,对不对,你比如说我这边随便输一个,比如我查找一个。Log in。你看是不是就自动有了对吧,或者随便打一个啊,是不是所有包含L的这个接口都有了,点击回车是不是直接就跳井了。对不对,所以说可以帮助你快速去定位到你的这个,呃,UR接口啊,这是to的一个使用。好。
20:01
那接下来的话呢,是什么呢?还有一个也是非常好用的,这个是帮助我们去梳理咱们整个程序调用链的啊,尤其是你在读一些源码的时候呢,用它是非常方便的,叫sequence。Sequence这个东西的话呢,它是可以呢,以图形界面的形式。以图形界面的形式来显示。我们方法的调用链。什么叫方法调用调用链呢?就是当你调一个方法的时候呢,这个方法经过哪些类对吧,包括它使用到哪些这个呃,实体类去封装你的结果,甚至于抛出哪些异常,这些东西全部都会给你的,比如说就是简单一点就。对吧,到service。到这个。
21:00
这层这层调用关系,它会直直接以图形界面的形式给你展现出来啊,使用它的话呢,就非常方便我们去梳理咱们程序的逻辑,尤其是在读源码的时候,因为源码的话,它是不是肯定一层一层掉,如如果说有了这个插件之后,你可以一目了然一个图形界面的形式就看到这个东西了。对不对,那这个这边的话我们来看一下啊,嗯,当然你也需要提前把这个插件装好。这个。Sequence diagram对吧,把它装上去之后。我们就可以看到它的一个调用量,比如说我们就来看这个order list,它的一个调用量,就这是一个controller层嘛,那它调哪些service,这个service又调哪些po,对吧,以及经过了哪些异常,这些东西呢,都会帮助你查出来了,怎么去用呢?非常简单,直接在这右键。这边是不是有一个sequence diagram,直接点击OK。你看。是不是整个图形就出来了。对吧,它的整个的一个调用量,你看。非常的清晰,这其实是一个流程图嘛。
22:01
对吧,这actor是不是开始开始是不是掉它,然后进到哪呢?是不是进到CTRL里边对不对,然后这边我们是不是有一个异常。对吧,我叫mail exception对不对,如果说呃,这这是我们可能会抛了一场,然后controller是不是进就进入到service,你看一层一层走嘛,是不是进入到service,包括这边是方法名是不是都给你了,叫find by ID吧。对不对,Service这是接口,然后这边是进行它的实现类mpr对不对,然后这边我们用的cut VO去封装它。对不对,Cut VI去封装它,然后cut VIVO里边我们又又调用到orders,因为我们购物车里边,你在操作购物车的时候,我们需要去查询它的订单嘛,对不对,所以说你看这是不是又进入到service层,Service这边是不是我们的。方法名都给你了,叫find view的ID对不对,然后这边是再进入它的,呃,这是类,这边是不是我们的一个。All view,然后包括order order detail view是不是都有,是不是这样一层一层调看,一层一层调,然后这边是不是再回过去的一个。
23:01
一个方式是不是有完整路径全部出来了。对不对,是不是一个流程图啊,就是你在这个接口它经过哪些类,是不是全部帮助你给梳理出来了,而且呢,把这个结构给你画出来。是不是非常方便你去梳理整个程序的一个逻辑,尤其是当你拿到别人代码的时候。当你别人拿到别人代码的时候,你不知道它里边怎么去调的,如果说你要你要自己去读的话呢,比较麻烦,因为你得找嘛,一层层去找,但是如果说有这张图是不是一目了然,非常清楚它的一个调用对不对,帮助你快速去梳理这个这个当前这个业务它的一个逻辑。对吧?啊,包括这个呃,插件还有个啥功能呢,可以导出这个文件,哎,比如说你觉得这张图片呢,你想把它保存起来怎么办呢?你不用说截图啊,它这边有个功能啊,直接点击这个按钮导出这个图片。比如说给它导到桌面啊,咱们就要test。直接保存啊,你看是不是桌面就会有这样一张图片,直接帮你把图片导出来了。
24:04
非常的方便啊,非常的方便直接导出来了,而且你也可以导出它的一个文件,对吧,这个的话是导出来就是这样一个,呃,Sequence diagram的一个格式的一个文件啊,当然这个的话我们一般用的比较少,我们更多的时候是图片嘛。对不对,所以说你在。比如在写项目的时候,或者说在看别人东西的时候,你是不是可以,呃,如果说这个业务你不是特别清楚,你是不是可以用这个插件把它的整个流程梳理出来,然后是不是截图生成一个图片保存下来啊,当你不会的时候,你是不是直接看这张图片非常方便吧?对不对啊,所以说这个就是我们idea里边。几个常用的一个插件。啊,我觉得不错的插件推荐给大家,然后你可以自己去尝试一下,然后在你的idea里边去使用这些东西,那么你写代码的话肯定会更快的。
我来说两句