继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

【金秋打卡】第21天 通用代码生成器开发

锦书难书Q
关注TA
已关注
手记 63
粉丝 0
获赞 8

课程名称:Spring Cloud+ Vue前后端分离开发企业级在线视频系统

课程章节:第6章 通用代码生成器开发

讲师姓名:甲蛙老师

课程内容

①开发代码生成器——代码生成器和mybatis-generator整合:更方便快捷地生成代码,提高开发速度,增加编程效率。

课程收获

现有的生成器在使用时需要先通过mybatis-generator生成持久层代码,再运行ServerGenerator生成service,controller和dto代码,相对来说仍有一些不便,为了解决这个问题,将代码生成器和mybatis-generator整合,只需修改generatorConfig.xml的<table>标签就可以一键生成代码。

首先要引入依赖

<!-- xml -->
<dependency>
   <
groupId>org.dom4j</groupId>
   <
artifactId>dom4j</artifactId>
   <
version>2.1.1</version>
</
dependency>


在ServerGenerator中添加如下代码:

// 只生成配置文件中的第一个table节点
File file = new File(generatorConfigPath);
SAXReader reader=new SAXReader();
//读取xml文件到Document
Document doc=reader.read(file);
//获取xml文件的根节点
Element rootElement=doc.getRootElement();
//读取context节点
Element contextElement = rootElement.element("context");
//定义一个Element用于遍历
Element tableElement;
//取第一个“table”的节点
tableElement=contextElement.elementIterator("table").next();
String Domain = tableElement.attributeValue("domainObjectName");
String tableName = tableElement.attributeValue("tableName");
String tableNameCn = DbUtil.getTableComment(tableName);
String domain = Domain.substring(0, 1).toLowerCase() + Domain.substring(1);
System.out.println("表:"+tableElement.attributeValue("tableName"));
System.out.println("Domain"+tableElement.attributeValue("domainObjectName"));


 

其中,DbUtil是连接数据库相关工具类,Field是将数据库表中字段的处理工具类

http://img4.sycdn.imooc.com/6368f6ed0001da3f19201048.jpg

http://img4.sycdn.imooc.com/6368f6f60001124219201051.jpg

代码生成器可以极大提高开发效率,使得一些重复性的工作量大幅降低,并且可以应用到以后的项目中,修改相关配置即可。


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP