00:01
咱们这个资料都下载过来以后呢,我们就可以按照官方文档的这个提示,我们来用一下这个逆向工程。好,我们打开咱们这个官方文档,My generator。打开的文档走。来看。好,介绍我们马贝斯genator mpg的使用,诶,这一块呢,有quick start教你来怎么用,那就来创建一个新的工程。在这里边。零七。在这里边呢,我们说MBG。那么呢?我们来到官方文档,他说。要快速的呢,把我们这个myab跑起来,哎,按照以下步骤进行,首先呢,我们得创建一个配置文件。这个配置文件呢,至少你得指定以下这么几项。
01:00
哎,一个呢,叫JD bc connection,它的作用呢,是用来指定怎么去连目标数据库的。哎,人家说还有一个叫Java model generator元素,它是指定,哎目标,咱们这个target pack,目标包和目标工程。为谁制定呢?为我们生成的这个Java模型这个对象,哎,也就是我们这些Java b。这个呢,Circle map generator,他说用它来指定,然后呢,目标包以及目标工程为谁指定呢?就是为我们这些circle映射文件,指定这些东西生成在哪些地方。还有呢,指定咱们这个可选的,哎,你可以指定一个啊Java client generator它呢,就是来指定为谁指定呢,为我们这些呃英interface,为我们这些接口类来指定生成的地方。而且呢,至少有一个啊,Table保元素数据库的一个table保元素来指定那人,我们得指定这么多元素,但人家说哎,如果呢,不会写也可以看这一块,哎,这里边有一个配置啊,是我们这个配置文件的实例,我们呢就把它拿过来。
02:14
啊,这个配置文件就在这儿了,我就直接复制过来。Contra。好,我们看好啊,我在工程底下,我先创建一个。我们没在类路径下创建,我在工程底下创建了一个。哎,我们就叫MBG。写错名了。MBG,好无所谓啊,这名儿叫啥无所谓。MBG。好,我把这个文件内容复制过来,那接下来我们就来看这些东西都是什么。首先这里有一个class pass entry,哎,这是用这种方式导入我们一些炸包,我们这些炸包呢,都直接在力保类路径下导的。
03:02
而我们这个炸包呢,马蒂斯?这个逆向工程的炸包,我们得倒过来。好,倒过来。放在类路径下。然后呢,我们再来看这一块呢,有一个contexttest标签,那么对于每一个标签,如果大家不知道是什么意思,怎么办呢?也可以来到我们官方文档,好,你看啊,我们能写这么多标签叉ML,咱们这个叉con,我们这个reference,哎,我们这个每一个能写的标签的这个定义都在这。比如我们这个康标签诶。其实翻译过来就是一个指定一个咱们这个马贝的这个。代码生成器的运行环境。所以说呢,我们这一块什么我们都不变,哪一个属性,如果大家也不知道是什么,那我们就点击这个contest标签进来。
04:01
来看,诶ID这一块有一个ID,这是一个必须的属性,可选的属性有这么多,哎,刚才那个target runtime就在这。哎,其中的一个取值马贝蒂斯三,哎,就是我们这一块写的值。然后呢,然每个值代表的含义你都能看得到这一块有解释,哎,这个呢,它说一大串,最终呢,它是会生成一个能有动态外标签的这个增删改查。而我们马贝蒂斯3SIMPLE翻译过来就是马贝蒂斯三简单版,它呢会生成一个basic,哎,简单版的CD就说增删百茶。那就先以简单的为例吧。好,接下来我们来看每一项配置代表什么意思。第一个JD bc connection,我们之前看文档的时候,人家也说过了,诶,在我们这个quick里边,JD bc connection是用来指定如何连到目标数据库的。
05:04
如何?连接。到咱们这个目标数据库。好,那么呢,把这个Java class之类的,我们一翻译就知道了,这是数据库驱动,我们写我们自己的。ABC。把我们的驱动拿过来。啊。当然你要能用这些驱动,这些驱动包之类的啊,因为我们是复制的别的工程,所以说这些之前的包还都在。Connection URL,咱们这个数据库的连接地址。我们也就拿过来。那么这个连接地址呢,我们来看一下啊,这个连接地址我们之前复制是不是把它给丢掉了。里边。数据库的配置。配置给丢了好。我们把这个数据库的连接地址呢,我们复制出来。CTRLC。
06:02
来到我们这个MBG配置文件中。啊,指定我们数据库的连接地址,还有呢,指定user ID也是用户名root以及密码。123456。啊,这一项。接下来我们再来看还有一个叫Java type server来翻译过来就是找咱们这个类型解析器,哎,这一块呢,大家可以参照我们这个文档。这个文档里边,哎告诉你Java type reserver的作用,哎它的作用就是来定义啊我们这些属性,哎怎么使用一些Java这个类型的解析器,哎比如呢,Shot浪啦这些呃配啦,用哪个解析器来做等等等等。好,我们这一块呢,就让它用默认的或者呢住掉都行,哎。翻译过来呢,也就是说是否强制转换贝克等西嘛。你接下来看,这个叫Java model generator。
07:01
这个呢,在我们官方文档的时候也提示过Java model。就是他。它的作用呢,是。定义我们这些,哎,Java模型的这些属性来生成我们这些Java b的,所以说这一块是。好,这一块呢,就有几个属性,我们注意一下,一个叫target package,就说呢,你生成你的这个目标目标包。目标的包名。好,我们为了这个测试有效果看好啊,我来到我们这个逆向工程的时候,原来我们自己写的这些渣逼我都干掉。删掉。我们自己写的这do我也删掉。啥都没有,我们这个测试类,测试类呢,我们也也都删掉吧,我们一会儿测试。嗯,不删了,这这一块留下,我们把剩下的这个一删。
08:02
删掉。把这些引入错误的我们都删掉,好,我们这个工程呢,就是一个非常干净的,包括我们把map文件也删掉。删掉,然后我们来到my be逆向工程的这个MBG配置文件中。首先指定的是扎B的生成的包名,我们把扎bin都放在靠板的硅谷。接下来再指定,哎,目标工程。生成在哪个工程下?我们就生成在咱们这个当前的这个工程。工程诶。目标工程。好,那么当前的工程呢?哎,我们可以写一个点杠SLC就行了。我们当前工程的src板下。好,那么接下来我们再来看这里边的属性,我们就不解释了,一不一一解释了,大家可以来看这个属性描述。
09:06
好,我们再来看第二个。Circle map gen。翻译过来呢,就叫circle啊,Circle映射的咱们这个生成。二生成。策略。生成策略的这个定义我们来看啊。我们来到circle map generator这一块我们就可以看到,诶,它是用来定义circle映射的啊。也就是定义我们这些插麦文件啊,都是怎么生成的。所以说呢,我们来看,把这一块我们该配的配出来。也其实也就是我们刚才配了两个属性,一个叫目标的这个包。我们把circle映射文件生成在哪呢?哎,我们都是生成在con配置文件夹下的这一块。八我们改为这一块。还有一个叫target project啊,我们生成在哪一个工程也是我们当前工程,只不过我们是。
10:05
在con。这个文件夹下。所有的文件目录都以马背,哎,都以我们eclipse的文件目录为标准,这么来做。好,接下来我们再来看。我们再来看。这块呢,叫扎克特展。这个呢,我们来看一下它的作用,来点击。这些呢,是指定咱们这个Java客户端代码生成器,这些客户端代码呢,也就是说,哎,如何利用咱们这个生成器构建我们这个Java Java的这个接口啊。以及类,就是说呢,我们相当于它是来指定我们这个map接口。
11:00
好。那么我们就来指定他在哪呢,诶,他在这个什么do班下。好,我们来指定包名,我们把所有的接口就是生成在我们这个do包下。目标工程,也是我们当前工程的src下。好,这指定好。接下来还有一个table标签,我们把它删掉,这个table保呢我们来看。点进去啊。这个table,它就是用来指定我们生成数据库里边哪些表的,来指定我们要生成的这些表,根据这些表来定义生成策略。它有required attribute啊,我们必须的属性叫table name,就说呢,你要生成哪张表,还有一些其他的属性。Table。他来指定要逆向生成指定。咱们这逆向。分析哪些表?
12:02
好正好呢,我们这个MYSQL数据库,我们连接上。好。我们这里边呢,有两张表,一张叫t BL de PT,一张叫employee。我们呢,就来指定。你要生产。哎,另外一张呢,叫。TP。好,这是我们指定要生成的表。哎,那么这些表呢,它要啊分析啊,根据这些表要创建根据。试着创建RB。所以说呢,我们就来每一张表对应哪个渣B也可以用,哎,这个属性我们来看啊,这个table保标签里边,除过必须的table name里边以外,还有一个叫啊do object name,咱们要生成的这个类的名字。
13:08
就是它,就是它,我们来指定啊,T BL de PT表对应的扎va b类我们就叫depar。啊。这个表对应的咱们这个扎比类,我们就叫。这个配置我们现在就简单的把官方的那个配置改改扒了一下,然后呢,我们再来测试测试。
我来说两句