`
vipbooks
  • 浏览: 136902 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类

基于数据库的自动化生成工具,自动生成JavaBean、自动生成数据库文档等(v4.1.2版)

阅读更多
        v4.1.2版更新震撼发布,功能更加强大,速度过来围观,此次版本更新如下:
             1、随着程序的功能越来越强大,原来的定位和设计已经无法满足更高的要求,所以决定对本程序更名,
                   更名为TableGo,以满足未来更丰富的功能和设计。
             2、新增快速生成数据库设计文档和批量生成数据库设计文档的功能。
             3、新增根据字段快速生成JavaBean的功能,在VO中增量添加字段非常方便。
             4、新增精确匹配(排除)和模糊匹配(排除),排除掉不需要生成的表。
             5、新增数据源备注,该备注用于自动生成数据库设计文档的文件名。
             6、新增多线程超时参数设置,在生成文档时因表字段太多而超时时可修改。
             7、修改了界面布局,使布局更加合理。
             8、修改实体注解使其能自动选中已选择的注解。
             9、优化表命名转驼峰命名和驼峰命名转表命名,使其支持单词间的空格,使用起来更方便。
             10、其他一些小Bug的修改和代码优化调整。

        欢迎访问TableGo官网:http://www.tablego.cn

        这里还有个设置的技巧,就是在设置实体生成策略时最好选择无字段验证的,因为我发现通过JDBC获取字段验证数据时会有点慢,效率不高。而且通过配置Hibernate和MyBaits的命名策略完全可以把实体生成策略设置成“所有字段上均无Column注解”,这样生成JavaBean速度最快,而且以后代码维护也方便很多。
       
        Hibernate或JPA配置:hibernate.ejb.naming_strategy=org.hibernate.cfg.ImprovedNamingStrategy
        MySQL配置:mapUnderscoreToCamelCase=true (这样配置以后在mapper.xml中就不需要写resultMap了)
       
        MySQL使用的数据库驱动包:mysql-connector-java-5.1.39.jar
        Oracle使用的数据库驱动包:ojdbc14.jar
        SQL Server使用的数据库驱动包:sqljdbc4.jar
        PostgreSQL使用的数据库驱动包:postgresql-9.4.1208.jre7.jar
       
        一直以来把数据库的表转换成JavaBean和数据库设计文档都是一件让人很头痛的事情,既浪费时间又很繁琐,看着几十上百个表的成千上万个字段,真是一件让人痛苦的事情。
        我们也想过很多办法解决这个问题,包括用MyEclipse连接数据库生成JavaBean,但多多少少还是会有一些不尽人意的地方,包括表和表字段的comment总是无法生成,而且还会生成很多无用的注释代码,让代码看起来一点都不干净,配置非常繁琐等等问题。
        于是一怒之下,自己动手丰衣足食,于是就自己用Swing写了一个基于数据库的自动化生成工具,支持MySQL、Oracle、SQLServce、PostgreSQL,完美支持JPA注解,可以同时生成Entity和DTO等,可以自动去除表前缀,支持单个和批量生成JavaBean,现在不但成员变量上能生成备注了,而且在Getter和Setter上也能有注释了。更重要的是还能自动生成数据库设计文档,如果有多个数据源还能批量生成,使用非常方便。
        所有的配置都保存在本地,只要配置过一次,下次使用的时候完全可以秒生成JavaBean和数据库设计文档,并且还集成各种实用工具,使得工作效率瞬间爆棚,生产力瞬间爆表!
        经过一些项目的使用和积累,我把它分享出来,大家有什么好的建议和想法也都可以提出来,因为比较忙,没有时间去做非常全面的测试,所以一定会有些bug。由于环境的原因,主要测试的是MySQL、Oracle,SQLServer、PostgreSQL测试不全,可能会有点Bug,大家如果发现什么Bug记得要告诉我,在下个版本中进行修正。

1、配置数据源界面:


2、配置转换参数界面:


3、字段设置界面,可以根据需求的不同设置字段转换类型,并可以在Date类型上添加注解配置:


4、高级设置界面:


5、集成工具界面,集成一些实用工具,工作效率瞬间提升数倍:




6、换肤功能,38款皮肤任你选,总有一款适合你:


7、数据源配置管理功能,可以为每种类型的数据库添加多个不同的数据源。删除需勾选要删除的数据源,修改和选择数据源无需勾选,双击可快速选中需要的数据源:






8、快速新增数据源功能,快速为当前选中的数据库添加数据源,备注用于自动生成数据库文档名:


9、参数配置管理功能,可以为不同的项目配置不同的参数:


10、快速新增参数配置功能,快速为项目添加参数配置:


11、打开目录功能,左键打开菜单选择要打开的目录,点击右键可以快速打开当前应用所在目录:


12、选择支持的数据库后,下面的数据源、IP地址、库名、端口、用户名、密码、备注和数据库文档名都会自动跟着做相应的变化,以支持不同的数据源配置:




13、配置好数据库以后点击测试数据库连接按钮就能测试数据库是否能够连接成功并显示数据库版本信息:


14、新增快速生成数据库文档的功能,支持同时生成Bean和数据库设计文档,如果在生成文档时出现多线程处理超时异常,可通过增加多线程超时时间和减少每个线程处理的表数量来避免超时异常(修改多线程参数需重启程序):




15、选择模板的功能,可以根据需要生成不同语言的Bean。大家如果想要生成其它编程语言的Bean可以发一个那种编程语言的标准Bean给我,我做成标准模板发布上来:


16、查看数据库中所有表的对话框,在精确匹配文本框旁点击更多按钮,即可弹出选择数据库表的对话框,这里将列出数据库中所有的表,并支持模糊查询(不区分大小写)查找需要的表,在复选框中选中需要的表,点确认选择即可(双击可快速选中):


17、生成实体时要使用的schema,schema可以自动生成:如果schema与数据库的用户名相同则选dbUsername,如果schema与数据库的库名相同则选dbName


18、可以同时生成Entity和DTO,也可以选择只生成某种类型的Bean:


19、支持带JPA注解和不带JPA注解的Bean:


20、选择实体注解功能,生成实体的时候自动为实体添加额外的注解,可自动为非空字段添加@NotBlank或@NotNull验证注解:




21、实体生成策略,可以根据需求为实体配置不同的生成策略:


22、实体主键生成策略,可以配置手动生成主键也可以配置自动生成主键:


23、自定义设置文件注释和设置类注释的功能,并可以使用部分内部参数:






24、新增根据字段生成JavaBean功能,在VO中增量添加字段非常方便:






25、新增批量生成数据库设计文档功能,可快速批量的生成数据库设计文档,如果在生成文档时出现多线程处理超时异常,可通过增加多线程超时时间和减少每个线程处理的表数量来避免超时异常(修改多线程参数需重启程序):


    这是我在真实的大项目中批量生成的数据库设计文档:




26、String字符串拼接工具,实现秒拼StringBuffer,再也不怕拼长长的SQL了:




27、清除StringBuffer工具,是String字符串拼接工具的逆向工具:




28、字符串格式化工具,提高工作效率的利器:




29、表命名转驼峰命名工具:




30、驼峰命名转表命名工具:




31、JSON字符串格式化工具:




32、XML字符串格式化工具:




33、JSON To XML工具:




34、XML To JSON工具:




35、程序第一次打开会自动生成两个配置文件,一个是配置数据库的,一个是配置参数的,如果设置了文件注释和类注释还会生成这两个注释的配置文件,一般第一次进去只要配置好数据库,点生成JavaBean,默认就能同时生成Entity和DTO了:






36、这是自动生成出来的Entity和DTO:




37、这是最新的源代码统计,通过几个版的功能叠加,现在的代码量已经有上万行了:


38、QQ交流群(入群密码:TableGo):
        在交流群里我会不定期的发布一些最新的测试版本给大家使用,大家在使用的过程中遇到什么问题或发现什么Bug都可以在交流群里提出来,大家一起讨论一起交流,共同发展和进步。


        使用该工具需要安装JDK7及以上版本的,因为现在用的开发环境和编译环境都是JDK7,其它版本的JDK还没有测试过,更高版本的应该没有问题,必需要在操作系统的环境变量里配置好JAVA_HOME,不然会找不到Java。

        找了好多的把Jar包打包成EXE文件的工具,都不能完美支持64位的系统,最后找到了exe4j,终于能完美支持打包成64位系统支持的版本了,我自己用的是Alienware15R2自带的64位Win10系统,如果生成的32位程序不能运行大家就说一声,我再去找虚拟机测试。

        解压有问题的同学注意了,你下载完所有压缩分卷包之后,用WinRAR工具依次打开每个压缩包,可以在地址栏处看到该压缩包的卷号,看到卷号是几就把这个压缩包重命名为几,当把所有压缩包都按卷号改好文件名之后就能一次性解压出来了。(我是用WinRAR压缩的,用WinRAR解压一般不会有问题)

或者你也可以去我的CSDN下载,CSDN上传文件大小限制宽松很多,所以我只要打一个压缩包就能包含64位和32位两个完整的程序,直接下载下来就可以使用,非常方便。
http://blog.csdn.net/vipbooks/article/details/54234432

该压缩包中包含32位和64位两个版本。

目录:
        第1版:http://vipbooks.iteye.com/blog/2209994
        第2版:http://vipbooks.iteye.com/blog/2211951
        第3版:http://vipbooks.iteye.com/blog/2212312
        第4版:http://vipbooks.iteye.com/blog/2215225
        第5版:http://vipbooks.iteye.com/blog/2219977
        第6版:http://vipbooks.iteye.com/blog/2224496
        第7版:http://vipbooks.iteye.com/blog/2230565
        第8版:http://vipbooks.iteye.com/blog/2283657
        第9版:http://vipbooks.iteye.com/blog/2296688
        第10版:http://vipbooks.iteye.com/blog/2318008
        第11版:http://vipbooks.iteye.com/blog/2330047
        第12版:http://vipbooks.iteye.com/blog/2339579
        v4.1.2版:http://vipbooks.iteye.com/blog/2351354
        v5.0.0版:http://vipbooks.iteye.com/blog/2375473
        v5.8.0版:http://vipbooks.iteye.com/blog/2404307
        v5.8.8版:http://vipbooks.iteye.com/blog/2412608
        v6.0.0版:http://vipbooks.iteye.com/blog/2441008
               
  • 大小: 105.2 KB
  • 大小: 103 KB
  • 大小: 99.8 KB
  • 大小: 94 KB
  • 大小: 105.4 KB
  • 大小: 94.9 KB
  • 大小: 102.7 KB
  • 大小: 106.2 KB
  • 大小: 34.1 KB
  • 大小: 111.1 KB
  • 大小: 102.5 KB
  • 大小: 94.8 KB
  • 大小: 97.8 KB
  • 大小: 105.5 KB
  • 大小: 103.6 KB
  • 大小: 104.3 KB
  • 大小: 114.9 KB
  • 大小: 118.6 KB
  • 大小: 130 KB
  • 大小: 103 KB
  • 大小: 98.5 KB
  • 大小: 102.4 KB
  • 大小: 99.7 KB
  • 大小: 100.8 KB
  • 大小: 116.9 KB
  • 大小: 19.2 KB
  • 大小: 92.4 KB
  • 大小: 94.5 KB
  • 大小: 98.9 KB
  • 大小: 98.3 KB
  • 大小: 18.8 KB
  • 大小: 72.9 KB
  • 大小: 90.1 KB
  • 大小: 113.9 KB
  • 大小: 96.7 KB
  • 大小: 126 KB
  • 大小: 471.1 KB
  • 大小: 76.3 KB
  • 大小: 79.5 KB
  • 大小: 73.4 KB
  • 大小: 70.2 KB
  • 大小: 76.7 KB
  • 大小: 76.6 KB
  • 大小: 80.3 KB
  • 大小: 78.6 KB
  • 大小: 85.9 KB
  • 大小: 84.6 KB
  • 大小: 74.5 KB
  • 大小: 76.1 KB
  • 大小: 66.7 KB
  • 大小: 70.5 KB
  • 大小: 64.2 KB
  • 大小: 65 KB
  • 大小: 63.4 KB
  • 大小: 59.6 KB
  • 大小: 11.6 KB
  • 大小: 25.1 KB
  • 大小: 26.8 KB
  • 大小: 19.6 KB
  • 大小: 15.4 KB
  • 大小: 49.4 KB
  • 大小: 51.6 KB
  • 大小: 17.9 KB
分享到:
评论
14 楼 suncong1024 2018-03-26  
不错不错,很好用      
13 楼 vipbooks 2017-11-04  
huangxinyu_it 写道
文件已损坏

应该是网络问题,那么多人下了都没有说损坏的,这个是老版本了,你可以去下最新的发布版:http://vipbooks.iteye.com/blog/2375473或CSDN的:http://blog.csdn.net/vipbooks/article/details/72653898,也可以去扫文章结尾贴出的QQ交流群,里面有最新的测试版。
12 楼 huangxinyu_it 2017-11-01  
文件已损坏
11 楼 vipbooks 2017-09-17  
yxsylyh 写道
能不能生成C++的类代码?

可以生成,你是要生成什么样的C++代码啊?你可以加文章里的QQ交流群大家一起讨论
10 楼 vipbooks 2017-09-17  
sunlewuyou 写道
感谢您出这么好的工具!

谢谢支持,可以加文章里的交流群,有什么问题大家一起讨论
9 楼 yxsylyh 2017-09-11  
能不能生成C++的类代码?
8 楼 vipbooks 2017-07-29  
214175590 写道
居然维护了这么多版本了,坚持力不错,不过建议吧UI美化下,太丑了
推荐一个UI美化包:BeautyEye

BeautyEye这个早就有人提议我用了,但是BeautyEye是个侵入性很强的UI包,而且不能像NetBeans那样直接在界面上画出来,我所有的界面全部都要手动一个个去重写,这几乎是一件不可能完全的任务!如果BeautyEye能像我内置的那些皮肤一样可以直接使用而没有什么侵入性,我不需要改很多代码,那我早就用了~
7 楼 214175590 2017-07-23  
居然维护了这么多版本了,坚持力不错,不过建议吧UI美化下,太丑了
推荐一个UI美化包:BeautyEye
6 楼 vipbooks 2017-05-26  
atlal 写道
作者你好,通过同事的分享我知道了你这个工具,在window电脑上使用确实非常棒,但我电脑是MacBook Pro 很希望作者能提供jar包,然后可以跨平台让其他系统的用户同样可以使用这么棒的软件。

我打包了一个Jar版本的,在Linux和MacBook上都测试通过了,下个版本会发布出来~
5 楼 sunlewuyou 2017-05-05  
感谢您出这么好的工具!
4 楼 vipbooks 2017-04-21  
atlal 写道
作者你好,通过同事的分享我知道了你这个工具,在window电脑上使用确实非常棒,但我电脑是MacBook Pro 很希望作者能提供jar包,然后可以跨平台让其他系统的用户同样可以使用这么棒的软件。

这不是一个Jar包的事情,还依赖了很多的第三方Jar包和一些资源文件,要打包起来才能用,Window我知道怎么打包,MacBook我没有就不知道怎么去打包了,MacBook上不是一般都会装个Window的虚拟机吗,而且也很容易装。我在Window上还装了VMware虚拟机,装了几个Linux,不知道能不能装个黑苹果测试下打包程序。
3 楼 atlal 2017-04-12  
作者你好,通过同事的分享我知道了你这个工具,在window电脑上使用确实非常棒,但我电脑是MacBook Pro 很希望作者能提供jar包,然后可以跨平台让其他系统的用户同样可以使用这么棒的软件。
2 楼 vipbooks 2017-02-22  
lion98 写道
tinyint 怎么会被定义为Byte[]

我刚看了代码,又在MySQL数据库测试了下,是转成Integer没有错啊,你那里怎么可能是Byte[]的,你确定是tinyint类型的吗?
1 楼 lion98 2017-02-22  
tinyint 怎么会被定义为Byte[]

相关推荐

Global site tag (gtag.js) - Google Analytics