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

根据表结构自动生成JavaBean,史上最强最专业的表结构转JavaBean的工具(第12版)

阅读更多
        第12版更新震撼发布,功能更加强大,速度过来围观,此次版本更新如下:
             1、新增参数配置管理功能,可以为不同的项目配置不同的参数。
             2、新增快速新增参数配置功能,快速为项目添加参数配置。
             3、新增选择实体注解功能,生成实体的时候自动为实体添加额外的注解。
             4、弹出对话框界面大小调整。
             5、新增数据源添加默认设置。
             6、精确匹配在点更多时,已选中的表会在弹出的列表中被勾选中。
             7、修复模糊匹配找不到表的Bug。
             8、其他一些小Bug的修改和代码优化调整。

        欢迎访问TableGo官网:http://www.tablego.cn
       
        下个版本将推出根据数据库自动生成数据库设计文档的功能,从此写数据库设计文档不再困难。
        大家在使用的过程中如果发现了bug一定要记得告诉我,我好在下个更新版本中进行修复。
       
        这里还有个设置的技巧,就是在设置实体生成策略时最好选择无字段验证的,因为我发现通过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
       
        一直以来把数据库的表转换成Entity或DTO都是一件让人头痛的事情,既浪费时间又很繁琐,看着几十上百个表的几百上千个字段,真是一件让人很头痛的事情。
        我们也想过很多办法解决这个问题,包括用MyEclipse连接数据库生成JavaBean,但多多少少还是会有一些不尽人意的地方,包括表和表字段的comment总是无法生成,而且还会生成很多无用的注释代码,让代码看起来一点都不干净,配置非常繁琐等等问题。
        于是一怒之下,自己动手丰衣足食,就在去年自己用Swing写了一个通过数据库的表生成JavaBean的工具,支持MySQL、Oracle、SQLServce、PostgreSQL,完美支持JPA注解,可以同时生成Entity和DTO,可以自动去除表前缀,并支持去除多个前缀,支持精确指定只生成哪几个表的Bean,也支持模糊查找生成哪几个表的Bean,现在不但成员变量上能生成备注了,而且在Getter和Setter上也能有备注了!
        更重要的是所有的配置都能被保存到本地,只要配置过一次,下次使用只要点一下生成JavaBean,下一秒就能拿到你想要的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。大家如果想要生成其它编程语言的Bean可以发一个那种编程语言的标准Bean给我,我做成标准模板发布上来:


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


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


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


18、支持带JPA注释和不带JPA注释的Bean:


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




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


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


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






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




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




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




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




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




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




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




30、JSON To XML工具:




31、XML To JSON工具:




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






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




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


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


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

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

        注意:在每次下载一个新的版之后,如果覆盖到老版本的目录中去,最好先将已存在的paramConfig.ini配置文件删除,打开程序后会自动重新生成一个与最新版本匹配的配置文件,这样可以避免新功能出问题。

        解压有问题的同学注意了,你看下下载下来的两个文件,一大一小,你先解压那个大的文件,会弹出一个选择文件的对话框,然后在对话框中选择那个小的文件就可以解压完成了。(我是用WinRAR压缩的,用WinRAR解压一般不会有问题)
或者你把大的文件改为“1.rar”,小的文件改为“2.rar”,然后再解压就可以一次性解压出来了。
或者你也可以去我的CSDN下载,CSDN上传文件大小限制宽松很多,所以我只要打一个压缩包里就能包含64位和32位两个完整的程序,直接下载下来就可以使用,非常方便。
http://blog.csdn.net/vipbooks/article/details/53242808

目录:
        第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
  • 大小: 85.9 KB
  • 大小: 86.5 KB
  • 大小: 81.7 KB
  • 大小: 83.2 KB
  • 大小: 89 KB
  • 大小: 156.8 KB
  • 大小: 83.1 KB
  • 大小: 91.9 KB
  • 大小: 83.9 KB
  • 大小: 352 KB
  • 大小: 71.3 KB
  • 大小: 169.2 KB
  • 大小: 84.3 KB
  • 大小: 85.9 KB
  • 大小: 96.3 KB
  • 大小: 86 KB
  • 大小: 72.7 KB
  • 大小: 85.1 KB
  • 大小: 82.8 KB
  • 大小: 84 KB
  • 大小: 94.4 KB
  • 大小: 19.2 KB
  • 大小: 81 KB
  • 大小: 83.5 KB
  • 大小: 80 KB
  • 大小: 79.4 KB
  • 大小: 18.8 KB
  • 大小: 55.4 KB
  • 大小: 58.3 KB
  • 大小: 58.4 KB
  • 大小: 54.8 KB
  • 大小: 66.1 KB
  • 大小: 65.7 KB
  • 大小: 67.8 KB
  • 大小: 66.7 KB
  • 大小: 74.6 KB
  • 大小: 73.6 KB
  • 大小: 68.6 KB
  • 大小: 70.5 KB
  • 大小: 61.4 KB
  • 大小: 65.1 KB
  • 大小: 58.8 KB
  • 大小: 59.5 KB
  • 大小: 53.9 KB
  • 大小: 49.7 KB
  • 大小: 11.6 KB
  • 大小: 25.1 KB
  • 大小: 29.5 KB
  • 大小: 19.6 KB
  • 大小: 15.4 KB
  • 大小: 48.2 KB
分享到:
评论
3 楼 xych007 2016-12-19  
 
2 楼 vipbooks 2016-12-02  
jianfeng89 写道
数据库为mysql
测试数据库连接通过
用的root用户
点击精确匹配以及生成javabean都会报错,
以下是log
java.lang.RuntimeException: java.lang.RuntimeException: 未找到任何数据库表信息,请检查配置或权限是否设置正确!
at build.BeanBuilder.getTableInfoList(BeanBuilder.java:781)
at build.BeanBuilder.build(BeanBuilder.java:290)
at ui.TableToBeanUI$28.run(TableToBeanUI.java:740)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.RuntimeException: 未找到任何数据库表信息,请检查配置或权限是否设置正确!
at build.BeanBuilder.getTableInfoList(BeanBuilder.java:728)
... 3 more

到底需要什么权限的用户才能读取表结构?

mysql这个库里面的表都是系统表,JDBC是没有权限把里面的表查出来的,你自己创建一个新的数据库就可以了,连你自己建的数据库是没有问题的。
1 楼 jianfeng89 2016-12-01  
数据库为mysql
测试数据库连接通过
用的root用户
点击精确匹配以及生成javabean都会报错,
以下是log
java.lang.RuntimeException: java.lang.RuntimeException: 未找到任何数据库表信息,请检查配置或权限是否设置正确!
at build.BeanBuilder.getTableInfoList(BeanBuilder.java:781)
at build.BeanBuilder.build(BeanBuilder.java:290)
at ui.TableToBeanUI$28.run(TableToBeanUI.java:740)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.RuntimeException: 未找到任何数据库表信息,请检查配置或权限是否设置正确!
at build.BeanBuilder.getTableInfoList(BeanBuilder.java:728)
... 3 more

到底需要什么权限的用户才能读取表结构?

相关推荐

Global site tag (gtag.js) - Google Analytics