00:01
好,那接下来的话,我们就来啊,编写一下我们这个代码生成器啊,我们需要这个生成的这个代码啊,好,那么回到我们这个开发工具里面。啊,然后呢,呃,我们诶还必须得使用到这个测试类了啊,因为我们得去写一些这个方法啊啊,那当然这个东西我们就可以不要了啊。行,那我们就直接来写上一个。好,就是我们这个啊,代码生成器啊,代码生成的这个实例代码啊好这个的话呢,没有一个标准答案啊,就是你在生成的时候呢,你可以根据你自己的情况呢啊来去做出一些这个不同的配置来啊好所以说呢,我们讲的是一个诶事例的一个代码,好没有ID,然后呢,Test我们的这个啊。哎,Genator吧啊,就是我们这个代码生成计啊好加上我们的测试方法,呃,那么在这里面的话呢,我们需要呃做这么几个呃配置的编写,因为我们呃买贝斯plus这个代码生成器的话呢,它没有一些这个配置文件啊,所以说呢,我们就需要啊把所有的这个呃配置信息呢,都通过我们这个代码的方式呢,给他什么写到这里面,所以说呢,我们大概的需要做这么几件事儿啊,第一件事情的话呢,我们需要做一个这个全局的诶这个策略配置是吧?啊全局的这个全局配置好啊,然后第二个的话呢,我们还需要配置这个啊,因为你要呃根据表来生成嘛,对吧,数是数据源,这个配置我们也是需要有的啊啊然后的话呢,我们还需要有什么呀,有我们的这个第三个啊,就是我们的一些这个策略配置啊。
01:39
好策略配置,然后呢,还是要有我们这个啊,第四个就是我们这个将来生成的时候呢,我们这个包啊相关的一些东西,就是我们这个报名策略啊,报名策略配置好啊,那么把这些写完以后呢啊,我们基本上呢也就差不多了啊,最后的话呢。那我们还得把这个啊,所有的设置呢,给他什么诶整合起来啊。
02:03
啊,就是一个这个整合配置啊。好整合配置,把这就相当于把我们上面写的这些配置呢,给它整合起来,然后呢,我们就可以进行这个代码的生成了,好那么首先呢,第一件事情,我们先来做一个这个,哎,全局的一个配置。好,那么这个全局配置的话呢,我们啊用的是一个叫做。哎,叫做global config啊,用的是这个global config好,比如说我们这就叫做哎config等于右上一个global config好呃,然后在这里面的话呢,我们都需要做哪些设置呢?诶我们挨个来看啊,比如说像这个config里面呢,就有一个set active record啊这就是我们啊设置一下它是一个布尔类型的,比如说写个true啊,那么它的含义就是诶是否支持我们的AR模式,好啊,如果说你这个设置的为true的话呢,那么将来我们生成的这个实体类呢?啊,它就会帮我们去继承一个哎model啊这样的一个类,好那么这个地方呢,我们就是开启了啊好,开启了以后呢,我们还可以再接着点啊,你看它这个方法呢,啊,还是比较有意思的。
03:11
嗯,他在这个执行完成以后呢,好,我们可以点进去来看一下啊,他在这个执行完成以后呢,帮我们返回的还是当前的这个诶格global卜comp对象,所以说我们在写的时候呢,我们就紧接着啊再去诶点它里面的东西就可以,比如说我们再来点,呃,还有什么呀,我们基本的比如说诶set啊,就作者。诶,Author作者啊,比如说我们,哎,把我名字写上啊,比如说啊W啊好把它写到这。好,这是我们设置一下这个作者啊。好,作者,然后呢,还可以写什么呢?啊,像我们这个最重要的一个啊,Set,我们叫output Di,那么大家猜一下这个是什么意思啊,好,这是我们的生成路径。
04:00
啊,生成路径啊,那么正常情况下的话,我们肯定是希望啊,它生成到我们这个当前这个工程下面的啊,所以说呢,我们就需要看一下,诶,我们这个工程的路径啊,是在什么地方了,好,我们来,诶有一个Switch work space是吧,我们来看一下。好,在这个file里面啊,啊Switch space在哪里啊,在这好啊,那么刚才我用的是这个D盘下面的work space MP啊,我们把它拷贝一下CTRLC。好啊,然后这个下面的话呢,我们来看一下啊。好找到我们的这个地盘。哎,其实我们这里面有一个,诶我space MP,然后呢,诶有一个我们的啊这个。MP03啊行吧,我们这就是我们的一个工程了啊,我们把它这个拷贝一下CTRLC。好,呃,然后呢,呃,我们拿到这个路径以后呢,大家注意了啊啊,我们先把它写到这。
05:05
OK,这是我们拷贝过来的路径,呃,那么生成到这个MP03下面的什么地方呢?大家注意它下面是不是还有这个s RC man,还有这个Java呀,诶说说呢,这个路径呢,我们也要跟着去写啊,那这个的话我就手动写一下了,它下面呢,有一个src,在下面呢,有一个麦啊,在下面的话就有一个我们这个Java啊啊这个是非常重要的,必不可少的啊,这个生成路径。行,那么这个设置完成以后呢,我们还可以设置有一个,呃,设置一下这个,呃,比如说file of red啊,就是你这个文件啊,文件覆盖啊,比如说你要进行这个多次生成的话呢,诶是不是要进行这个文件的覆盖啊,那这个的话肯定是true了,就是我们啊第一次生成的话无所谓,第二次生成的时候呢,我们就希望诶第二次生成的东西呢,啊把这个第一次生成的给他什么啊覆盖掉,那我们就通过这个来进行一个设置。好,再来往下看,呃,再来介绍一个啊,像我们的这个啊ID啊,大家应该都还记得哈,就是我们这个组件策略啊。
06:05
好,那么这个组件策略的话呢,我们用的是这个ID t.auto是吧,这个也能设置啊,就是我们这个组件策略。好,就是我们这个啊,自增组件啊呃,还有什么东西呢,我们再来找一下啊,比如这里面还有一个嗯,叫做service。Service name。好,Service name啊,应该是这个,这个是干嘛的呢?啊大家注意呃,这里面的话呢,我们呃,它主要是来设置这个,呃,就是设置我们生成的这个service接口呢,呃,这个这个接口名的啊,Service接口的名字的首字母是否为I,呃这个地方需要给大家解释一下啊,什么意思呢?呃,就是呃,它默认情况下的话呢,呃,它是会帮我们这个生成一个啊接口,比如像我们这个employee啊,这个service接口的话,它是这个样子的,叫做I什么什么employee啊哎,Service是这个样子的,那如果说我们不希望诶拿不希望它有前面这个I的话呢,我们这个位置的话,就得做一个这个设置了啊好怎么设置的话呢,我们通过这样的方式百分号S,然后呢,后面呢,我们写上一个s service这样的话呢,我们就诶没有这个I了,好这个大家了解一下就行啊,然后呢,再来接着往下写。
07:31
嗯,还可以生成什么呢?像我们的这个set base map。呃,这个是啥意思呢?就是他将来会帮我们生成这个搜Q映射文件啊,啊因为我们考虑到将来我们会自己去编写一些,编写一些这个方法啊接口里面的方法,那么当然我们就会有一些啊方法所对应的这个circleql语句,那么对于这个circleql语句来讲的话呢,将来我们就可能会做一些这个查询操作,那么我们在啊最终做这个结果的映射的时候呢,诶,可能会用到这个自定义的这个结果定映射啊,我们需要让它生成这个基本的一个哎,Result map,好,所以说这个的话,我们也可以给它触,呃那么呃,还有一个的话,我们也可以试一下啊,有一个叫做base column list啊,这个的话就是相当于帮我们生成一个这个SQL片段了啊,就是我们这个基本的,诶这个列啊,这个集合就相当于呢,诶帮我们生成一个SQ片段啊,方便我们去使用了啊好,这个的话,我们也给它改成这个true。
08:33
好,呃,那么呃,我们把这个设置完以后呢,诶基本上我们的啊,这个全局配置的话呢,哎,也就差不多了,好。
我来说两句