数据库逆向生成代码

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jnshu_it/article/details/86287479

这里是修真院后端小课堂,每篇分享文从

【背景介绍】【知识剖析】【常见问题】【解决方案】【编码实战】【扩展思考】【更多讨论】【参考文献】

八个方面深度解析后端知识/技能,本篇分享的是:

【 数据库逆向生成代码】

数据库逆向生成代码_腾讯视频

1.背景介绍

做项目必然要先进行数据库表设计,然后根据数据库设计建立实体类,这是理所当然的。但是一般公司里做项目时,没有说既进行完数据库设计后还要再“自己”建立一遍实体类。意思是,在项目设计时,要么根据需求分析建立实体类,由正向生成数据库表;要么就先进行数据库表设计,再逆向生成实体类。没有说进行完任意一方的设计后再去花时间去自己匹配建立另一方的设计。

原因:

1、2倍工作量,浪费时间。(时间对公司来说很重要)

2、无法保证两边映射一致。因为两边都是自己设计的,那么就需要人为保证映射关系统一,会有隐患。

3、开发、维护上都不利。因为如果任意一方因某些原因需要改用,那么经常要两边都要改,这样的话映射不一致的可能性不仅更大,而且效率低下。而如果利用正逆向工程的话,则很容易解决。

扫描二维码关注公众号,回复: 4867218 查看本文章

2、知识剖析

MyBatis Generator (MBG)是一个专门为Mybatis和iBATIS写的代码生成器。它可以为所有版本的Mybatis和2.2.0之后版本的iBATIS生成代码。MBG可以生成一些简单的CRUD的数据库操作,但稍微复杂的sql仍需要自己写。

Pojo类

匹配的主键的类,匹配非主键字段的类(除了BLOB字段),匹配BLOB字段的类,用来处理动态SELECT,DELETE,UPDATE的类。

XML文件

insert

update by primary key

update by example (using a dynamic where clause)

delete by primary key

delete by example (using a dynamic where clause)

select by primary key

select by example (using a dynamic where clause)

count by example

3、编码实战

在resources底下建一个generator.xml配置文件

------------------------------------------------------------------------------------------------------------------------

今天的分享就到这里啦,欢迎大家点赞、转发、留言、拍砖~

技能树.IT修真院



作者:yaoyuan17023
链接:https://www.jianshu.com/p/5248a9ace73f
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

更多内容,可以加入IT交流群565734203与大家一起讨论交流

这里是技能树·IT修真院:https://www.jnshu.com,初学者转行到互联网的聚集地

猜你喜欢

转载自blog.csdn.net/jnshu_it/article/details/86287479