IntelliJ IDEA中代码一键生成方法
之前有不少小伙伴问松哥微人事项目(https://github.com/lenve/vhr)使用的MyBatis逆向工程在哪里?其实旧版微人事当时没有使用逆向工程,是我自己手动敲出来的,当然手动敲的工作量非常大。
今年发出来的新版微人事,我使用了逆向工程自动生成实体类和dao层的代码。MyBatis的逆向工程要么需要添加依赖,要么需要自己去网上下载jar,用起来还是有点麻烦,所以,今天和小伙伴们介绍一款IntelliJIDEA上的免费开源插件,叫做EasyCode,可以方便的根据数据库生成相应的代码。
EasyCode是基于IntelliJIDEA开发的代码生成插件,支持自定义任意模板(Java,html,js,xml);只要是与数据库相关的代码都可以通过自定义模板来生成;支持数据库类型与java类型映射关系配置;支持同时生成生成多张表的代码,张表有独立的配置信息,完全的个性化定义,规则由你设置。
我自己也稍微体验了一把,还是蛮方便的。
1.安装
首先点击File->Settings->Plugins,然后搜索EasyCode,如下:
安装成功之后,重启IDEA。
2.创建项目
接下来我给大家演示一个如何在SpringBoot中使用EasyCode。首先我们在IDEA中创建一个SpringBoot项目,创建过程我就不多说了,如果大家不会,可以在我公众号后台回复springboot,有详细的教程。
3.添加数据源
由于这个项目是基于IDEA上的DatabaseTools开发的,因此我们首先要通过IDEA上的Database连接数据源。
接下来配置你的数据库连接信息,如果没有检测到合适的数据库Driver,点击左下角自动下载:
连接成功后,点击OK。默认情况下没有展示连接下的数据库,需要我们手动勾选,例如我这里要连接vhr数据库,如下:
4.生成代码
做完前面三步,准备工作就算OK了,接下来就是生成代码了。例如我想给vhr中所有的代码生成实体类、dao层以及service层,方式如下:
首先选中所有的表,然后右键单击,选择EasyCode->GenerateCode,如下:
第一次添加的时候,如果有数据库类型没有对应的Java类型,就会有提示,这个根据它的引导去添加映射关系即可,例如我在添加的时候,出了一个这个提示:
点击Yes,然后去添加自己的类型映射:
添加成功之后,再去做代码生成,这下就可以了:
这里,如果项目是多模块项目,可以先选择代码生成的Module,然后设置代码生成的package,最后从下面勾选要生成的代码模版,点击OK即可。
在代码生成的过程中,如果没检测到package下面有service、dao以及entity等包,工具会提示自动创建,点击Yes即可。
最终生成的代码如下:
至此,各层的代码基本都生成了。大部分小伙伴用到这一步可能就OK了。
当然如果你觉得EasyCode自动生成的模版不够用,或者不好用,我们也可以自定义模版。
5.自定义模版
例如,我想在生成的dao层代码中,额外添加一个不需要任何条件,获取所有数据的方法(默认的生成模版中没有这个方法)。
点击File->Settings->EasyCode->TemplateSetting:
可以参考工具自己的定义方式,我们现在先在dao.java中,添加如下方法:
/** *查询所有数据 * *@param$!tool.firstLowerCase($!{tableInfo.name})实例对象 *@return对象列表 */ List<$!{tableInfo.name}>getAll();
然后再给它添加一个配套的mapper.xml中的方法,打开mapper.xml,添加如下方法:
select #allSqlColumn() from$!{tableInfo.obj.parent.name}.$!tableInfo.obj.name
配置完成后,点击OK。
接下来再去重新生成代码,就可以看到生成的方法中多了一个方法了,其他代码模版的定义与这个类似,我就不再赘述了。
以上所述是小编给大家介绍的IntelliJIDEA中代码一键生成,希望对大家有所帮助,也非常感谢大家对毛票票网站的支持!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。