逆向工程


在使用mybatis时需要根据数据表创建实体类,pojo类的映射文件以及sql语句和Dao层,而这些部分没有什么技术含量,myBatis官方提供了逆向功能,可以根据数据表自动生成pojo,映射文件以及dao层。我们通常将Dao层称为mapper.java,将映射文件称为mapper.xml,将会实体类称为pojo。

数据库部分

我用的数据库:MySQL 8.0.23
我新建的数据库名:sweetwine
用户名:root
密码;123456
在这里插入图片描述

我用的数据库版本是8.0.23 的,所以导入jar包时,与MySQL 五点几版本是不一样的。下面会提到。
查看MySQL的版本的方法:在cmd界面输入 mysql -uroot -p123456 (root是账号,123456是密码)

逆向工程

说明

导入文件之后,如果有错可以看“添加相应jar包”这一步,如果没错就修改文件就行了。因为有错的都是jar包的位置对应不上造成的。
没错的前提:在D盘新建一个文件夹【逆向工程】,在逆向工程的文件夹里放两个文件,一个叫【reverseProject】,另一个叫【逆向工程jar包】。这样就可保证jar包位置对应得上,就不会报错了。
下载地址:https://gitee.com/xiaoguo124/reverseProject

导入文件 reverseProject

在这里插入图片描述

添加相应jar包

选择项目,右键选择最后一个【properties】,就进入如下界面

  1. 第一步(图一),有错也就是带叉的全部删除(Remove)
  2. 第二步(图二),选择本地的jar包,添加进去(点击【Add External JARs…】)
  3. 图文点击打开之后,重回eclipse界面,点击【Apple and Close】就行
    在这里插入图片描述
    在这里插入图片描述
    完成之后长这样:(有黄色感叹号,但没红叉)
    在这里插入图片描述

说明:对我来说这里我有两个jar包时没有必要添加的,但是全部添加之后用不上的包也只是占点内存。
说一下哪些对我没用是
上图倒数第三个针对数据库mysql五点几的版本(我的是八点几),倒数第一个针对Oracle数据库

修改这个工程

因为每个人的数据库,表都不一样,所以要做一些适当的修改

三个 .xml 文件都要修改的地方

需要修改几处关键信息:

  • driverClass=“驱动类”(MySQL五点几版本不加 .cj)
  • connectionURL 端口号/数据库名
  • userId 用户名
  • password 用户密码

在这里插入图片描述

上图是针对数据库的修改,工程中的三个 .xml 文件都有需要该这个部分,错了就连不上了。
sweetwine是我的数据库名,可以回数据库部分看看



修改generatorConfig.xml文件

下面三个包注意一下就行(如果不改也可以)
在这里插入图片描述

  • 第一个:生成的实体类都在这个包,它们都是类
  • 第二个:生成的mapper映射文件,都在这个包,它们的后缀都是 xml
  • 第三个:生成的mapper接口,都在这个包,它们都是接口
  • 如果不习惯接口与xml文件在同一个包里的,可以让后两个的名字不一样就行

数据库中的表要一一对应(表名不错就行)

在这里插入图片描述

工程终点-运行GeneratorSqlMap.java文件

运行成功后便能生成两个包,包名就是上面 targetPackage(往上数第二张)引号的名字。

  • 执行的是红色框里的文件
  • 它上面的是成功之后的两个包
  • 可以对比前后的工程结构,前后多的就是这两个包
    在这里插入图片描述

把生成的两个包复制到主工程上(也就是需要写实体类和映射文件的JavaWeb项目)逆向工程的任务就结束了。
当数据库中表数量很多,且每个表里的列名也很多时,逆向工程能省了很多手写实体类,以及接口的时间。让编程变得高效。毕竟很多发明都是因为“人懒”才有的,想多动脑不动手的那种。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值