00:00
好,那我们刚才呢,咱们讲了my be的缓存,然后下面呢,大家来看一下大家最关心的一个内容,叫做my be的逆向工程。那逆向工程它的本质呢,其实就是一个代码生成器,那首先大家要知道什么是正向,什么是逆向,正向呢,是根据我们所创建的Java实体类,然后去生成我们的表啊,然后harber net里面其实是支持咱们的正向工程的,当然harber net里面不单可以帮助我们生成表,它还能帮助我们生成SQL尾区,好然后再往下的话,咱们的逆向工程的话,大家注意啊,是先创建数据库表,然后由咱们当前的框架呢,去负责根据咱们的表去生成实体类啊,去生成map接口啊,去生成咱们的映射文件,所以说大家注意,这是咱们的my be斯的逆向工程,然后再往下,那咱们别的也不多说,咱们就直接开始来创建咱们的逆向工程啊。好,那首先呢,咱们再来创建一个新的工程,哎,来next,然后咱们叫做my be,下划线叫MBG啊,为什么叫MBG,因为MBG它大家注意,它指的就是my bet的逆向工程的意思叫my bet generator OK啊,行,然后这个group ID一样的com.at硅谷点买,OK啊。
01:23
行,那我们现在咱们设置完成之后,那大家来看,首先咱们的第一步打包方式,那必定还是一个价包对吧,然后再往下我们当前呢,把我们所需要依赖的这些架包呢,然后把它们的坐标来设置一下啊,咱们先复制过来,然后咱们再说具体的是什么意思好。首先呢,大家来看咱们在这儿所设置的这个依赖呢,然后只有一个,就是咱们买be的一个核心价包,然后再往下的话,咱们在这来设置的是咱们这个maven里面的一些插件,大家注意啊,叫做plugins,当然呢,咱们之前在学习maven的时候,可能没有接触过这些插件啊,但是呢,我们从现在开始,然后我们就会陆陆续续的接触到一些常用的插件,就比如说咱们的逆向工程的插件,还有就是我们以后在学习项目的时候,咱们要来在maven的po点叉ML中去设置咱们的tomcat的插件,这个大家注意,比如说呢,大家来看咱们的第一咱们所使用的插件就叫做my be,然后杠generator,然后杠maven,杠plug,大家注意啊,那我们的这些插件该如何去使用呢?等到一会儿我们把所有的这些配置信息呢都配置完成之后,然后大家来看,把me本给点开,然后来找到我们的my be下。
02:44
划线MBG,找到这个plugins之后,大家来看这个地方是不是就有一个my beat-generator的一个插件,大家只需要双击,然后就可以直接执行咱们的逆向工程的这个功能,这个大家注意啊,非常的方便,那像我们以后如果咱们在POM点叉L中来设置了我们的tomcat的插件之后,然后同样在我们的plugins这个选项中就有了mca的插件,我们直接来双击就可以来运行我们当前的工程,这个大家注意啊。
03:18
好,那下面呢,我们再来看,那我们当前咱们的插件呢,也是需要有依赖的,就比如说逆向工程的核心架包,还有就是咱们的数据库连接池,叫C3P0,还有呢,就是咱们的MYSQ的一个驱动包,这个大家注意啊,行,那我们把依赖设置完成之后,下面大家再来看,咱们的第二步是需要去创建买be的核心配置文件,那当然呢,大家注意,我们的MBG逆向工程跟咱们的核心配置文件有关系吗?其实没有任何关系,我们在这儿把它给创建出来,主要是为了什么?主要就是为了我们一会儿咱们把逆向工程创建出来之后,那我们没有核心配置文件,咱们没有连接数据库的环境啊,所以说呢,我们要想实现MBG逆向工程之后的一些增删改查的功能,我们还是需要自己来写这个配置文件的,知道吧,这样的啊。
04:15
行,那所以说我们就可以把它先在创建一下,来创建一个my be-config,就叫做my be-con点叉L,然后咱们的包名呢,来先创建一下,或者说大家创建也行,不创建也行。等到一会儿咱们的逆向工程。然后生成之后,然后生成咱们的实体类,或者说咱们的map接口和映射文件之后,咱们再来设置也不晚,OK,然后呢,我们来找到咱们的DEMO3,然后把我们所需要的一些JDBC.pro词log for g,然后点叉ML,然后咱们都把它给拿过来啊。行。
05:00
好,那我们看一下咱们的POM点叉L,这里面应该是没有日志功能的,对不对,那咱们是不是还要把日志功能的这些价包是不是也加上是不是啊,那我们就还用咱们的这个什么啊,还用我们的logo服务器就可以啊来大家看一下logo服务器,然后复制,还有就是我们的my circle的驱动对不对,然后呢,复制一下及unit,咱们也复制过来啊行。好,然后咱们把这些依赖给拿过来,好,OK,那我们现在把依赖都设置完成之后啊,然后咱们的日志文件咱们是不是也已经复制过来了,对吧?GDBC.proper咱们也已经拿过来了,然后下面呢?那我们再往下看来,下面咱们就需要来创建咱们逆向工程的配置文件了,大家注意,这个配置文件可是非常的重要,这里面来配置的就是我们当前的逆向工程该如何去实现好。这个配置文件的名字大家要注意,是固定的,叫做generator,然后conve点叉L来大家看好,找到咱们的resource来创建一个file,然后OK。
06:08
然后把我们这个配置文件中的内容呢,大家直接复制就行啊,CTRLC,然后CTRLV就可以啊,好,那我们把咱们这里面的内容呢,咱们稍微的给它改一下啊,首先这个爆红大家也是不需要去管,OK吧,然后再往下的话,这里面有一些注释,然后大家来看咱们的跟标签呢,叫做generate conviguration,这个咱们说过,然后呢,如果我们用的是BTD这种约束的话,咱们do tap后边这个值必定就是咱们的跟标签,对吧?然后下面是context的标签ID呢,大家不用管,然后target runtime指的是我们当前逆向工程的一个版本,然后咱们在这儿有两个版本,一种叫清新简洁版。只有增删改查的五个方法,为什么是五个呢?增删改查询所有数据,根据ID来查询一条数据,只有这五个方法知道吧?那我们就先来看一下咱们的清新简洁版,然后咱们再来看奢华尊享版啊。
07:13
好,然后大家看这个是来设置我们连接数据库的信息,因为毕竟我们的逆向工程是根据咱们的表。然后来生成我们当前咱们的映射文件,实体类,还有咱们的map接口,所以说它一定要连接到数据库才能去解析这张表,OK吧,好,大家看一下这些东西咱们应该都不需要去改吧,是不是?比如说这个数据库买V提,然后用户名root,密码是123456,当然大家如果说不一样的话,大家一定要把它给改一下,然后再往下Java bin的生成策略,也就是我们的实体类的生成策略,大家来看,那我们当前呢,咱们所设置的包是com.a硅谷点买be.po。叫做po to,然后我们要生成的位置是当前的工程下,SC下面,下面src下面的慢下面的Java,也就要来生成咱们的这个包下面,这个文件夹下面,OK吧,好,然后这个地方叫做是否能够使用子包,什么叫是否能够使用子包?也就是说如果我们在这写的是处,那咱们的每一个点它对应的都是一层包的意思,如果我们在写的是false,那它就是一个目录的名字。
08:32
这个大家注意啊,好,然后trim strings什么意思来去掉咱们字符串前后的空格,这个是干什么的呢?因为大家都知道,我们现在的逆向工程是通过解析我们的数据库。中的这个表啊,然后呢,去反向的生成我们当前的实体类对不对,还有map接口以及映射文件,那所以说它是不是就要把我们的这个字段名大家记好啊,是把我们当前咱们的这个字段名,然后是不是来转换成咱们当前实体类中的属性,那所以说如果咱们的字段名前后有空格的话,然后它就可以自动将空格给去掉,哎,这个大家注意,然后再往下咱们的circle映射文件的生成策略,然后映射文件咱们要生成到哪啊,com.a硅谷点my be.map然后咱们要把它给生成到resource下没有问题,这个同样是是否能够使用子包,然后这个是咱们的map接口的生成策略,大家来看它所对应的包是com的艾硅谷的my map,它们两个要一致对不对,然后它所对应的目录的话,大家看是不是应该是要放到Java下,因为这个是咱们的map接口啊,这个大家注意。
09:48
好,然后是否能够使用此包可以,然后再往下的话,就是我们当前咱们要逆向分析的表了,咱们在这呢,一共有两张表一,一张叫做提下划线emp,一张叫做提下划线de PT,那所以说这个大家注意来设置的是我们的表名,而这个来设置的是我们当前所对应的实体类的类名,那我们现在咱们还没有来设置我们的map接口的名字,以及咱们的映射文件的名字,那这个咱们需要设置吗?大家注意不需要,因为它会根据咱们的实体类的名字去自动生成,然后在实体类后边直接加上map,就是咱们的映射文件以及map接口的名字,哎,这个大家注意啊。
10:34
行,那我们现在呢,咱们的配置文件咱们就已经配置好了,然后下面大家来看,那我们就可以来执行这个功能了,来大家看好了,怎么执行,非常简单,大家看在这儿的话,咱们现在是什么都没有,对不对?Map接口,映射文件,还有实体类咱们都没有来找到我们当前的my be_MBG,找到咱们刚才所说的这个插件,我们现在呢,来双击大家来看啊。
11:03
好,大家看一下,直接成功了对吧,然后成功了之后我们再回到我们当前咱们的工程中,咱们来查看一下,大家看这就是我们的实体类,这个就是我们当前咱们的map接口,然后这下面就是我们当前的两个映射文件,那咱们把实体类打开来看一下,大家看啊,好,然后这里面的话,这是我们的字段,大家看一下啊,这是我们的属性,由字段所生成的属性,大家看一下,看这个地方很神奇,我的字段名叫EP下划线内幕,而我当前所逆向工程所生成的属性是不是就是它所对应的驼峰啊,这不就是我们所说的规则吗?字段名咱们用下划线,然后属性我们用驼峰,没问题吧,好啊,行,然后这是H,这是sex,然后这是email,这是dad,再往下get跟set方法。没问题吧,好,然后再往下,大家看咱们的map接口里面一共几个方法,五个方法,这是根据主键来进行删除,这是来添加,然后这个是根据主键来查询一条数据,然后这个大家注意是来查询所有,然后这个的话,然后是根据主见来进行修改,所以说大家看这个就是我们当前咱们的清新简洁版里面只有最基本的五个方法,如果大家要想去实现其他方法的话,你还得自己去写。
12:33
这个大家注意啊,你还得自己去写,所以说呢,大家可以看一下我们的这个清新简洁版的这个功能啊,当然了,咱们以后主要用的啊,就是奢华尊享版,因为这个里面奢华到什么程度呢?你想实现什么功能都有,包括各种情况,包括咱们的奢口语句的拼接,对吧?然后奢华尊享版里面都已经给我们提供过了这样的啊,行,那这个是我们的这个清新简洁版这个功能呢,我就不给大家测试了,因为非常简单啊,好,然后咱们主要呢。
13:09
带着大家来测试一下咱们的这个奢华尊享版的啊。
我来说两句