基于数据库的代码自动生成工具,生成JavaBean、生成数据库文档、生成前后端代码等v5.8.0版)

       TableGo v5.8.0版更新震撼发布,功能更加强大,速度过来围观,此次版本更新如下:
          1、新增自定义文件功能,可以自己编写模板生成任意代码的文件。
          2、新增数据源配置自动生成功能,项目分库分表不用愁,一次搞定所有数据源。
          3、公共参数界面新增表别名和是否目录直通的配置。
          4、生成Bean界面新增是否生成字段注释和重写equals,hashCode,toString方法的配置。
          5、MyBatis配置界面新增根据所有字段条件查询数据的选项。
          6、新增TableGo使用说明书。
          7、更新数据库驱动版本,新版的驱动可能不支持JDK8以下的版本。
          8、修复了大量的Bug并进行了一些优化。

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

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


1、数据库配置界面:


2、公共参数配置界面: 


3、生成Bean配置界面:


4、生成MyBaits的Mapper映射文件配置界面: 


5、生成数据库设计文档配置界面:


6、新增自定义文件配置界面,可以自己编写模板生成任意代码的文件:


    这是用于生成EasyUI的DataGrid的自定义模板:


    根据这个自定义模板生成的JS代码:


7、集成工具界面,集成11款实用工具,工作效率瞬间提升数倍:


8、新增数据源配置自动生成功能,用于快速生成数据源配置信息:


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




10、这是自动生成的MyBatis的Mapper映射文件:


11、这是自动生成的数据库设计文档:


12、这是编写自定义模板生成的JS代码:


13、这是最新的源代码统计:


14、提供Jar包版本,完美支持Linux和MacBook,MacBook只需要在“安全性与隐私”那里允许打开TableGo.jar就可以了:


15、QQ交流群(入群密码:TableGo): 

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

     Win版本下载地址:http://download.csdn.net/download/vipbooks/10153225
     Jar版本下载地址: http://download.csdn.net/download/vipbooks/10153227


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


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

 

 

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

 

 

        这篇文章我也在ITeye发表了,这两个博客都是我自己的,该文章中提到的这个软件是我自己开发出来的。如果你由于缺少积而无法下载,可以在 http://vipbooks.iteye.com/blog/2404307 免费下载,如果你觉得这个软件不错,希望可以下载我上传到CSDN中的版本,只需要1点积分,也是对我的支持,谢谢!

 

目录:

            第1版:http://blog.csdn.net/vipbooks/article/details/51912143
            第2版:http://blog.csdn.net/vipbooks/article/details/51912537
            第3版:http://blog.csdn.net/vipbooks/article/details/51912750
            第4版:http://blog.csdn.net/vipbooks/article/details/51912930
            第5版:http://blog.csdn.net/vipbooks/article/details/51915364
            第6版:http://blog.csdn.net/vipbooks/article/details/51916266
            第7版:http://blog.csdn.net/vipbooks/article/details/51916507
            第8版:http://blog.csdn.net/vipbooks/article/details/52005477
            第9版:http://blog.csdn.net/vipbooks/article/details/52005926
            第10版:http://blog.csdn.net/vipbooks/article/details/52226266
            第11版:http://blog.csdn.net/vipbooks/article/details/52806475
            第12版:http://blog.csdn.net/vipbooks/article/details/53242808
            v4.1.2版:http://blog.csdn.net/vipbooks/article/details/54234432
            v5.0.0版:http://blog.csdn.net/vipbooks/article/details/72653898
            v5.8.0版:http://blog.csdn.net/vipbooks/article/details/78767469
            v5.8.8版:http://blog.csdn.net/vipbooks/article/details/79492051
            v6.0.0版:http://blog.csdn.net/vipbooks/article/details/90244554
            v6.6.6版:http://blog.csdn.net/vipbooks/article/details/102786571

  • 6
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 21
    评论
官网:http://www.tablego.cn   博客:https://blog.csdn.net/vipbooks      TableGo v6.0.0 震撼发布,此次本更新如下: 1、UI界面大改,组件大调整,提升界面功能的可扩展性。 2、新增BeautyEye主题,界面更加清新美观,也可以通过配置切换到原生Java主题。 3、新增合并增量更新功能,并能指定代码中哪些代码块动态更新,哪些代码块不更新。 4、新增文件更新方式配置,可根据需要使用增量更新和覆盖更新。 5、新增保存全局参数和自定义文件的JSON参管理功能。 6、生成自定义文件新增JSON参数配置,可以灵活定义各种参数并能将代码直接生成到项目源码目录中去。 7、生成自定义文件新增是否生成单一文件配置和是否收集扩展信息配置。 8、生成自定义文件新增和调整了多个参数,使模板编写更加方便快捷。 9、生成数据库文档功能新增生成标题目录功能。 10、新增主要UI界面的界面大小配置功能,可根据需求在配置文件中调整UI界面大小。 11、新增友情捐赠界面,项目的发展离不开您的支持,无论捐赠金额多少都足够表达您对我的支持。 12、新增捐赠名单界面,所有捐赠者的捐赠信息和留言都会在这里展示,以此留名。 13、按字段生成JavaBean工具新增选择自定义模板功能。 14、新增MySQL关键字表名兼容性。 15、新增log4j2,TableGo的运行日志将在logs目录中输出,方便查找问题。 16、公共参数移除两个扩展参数配置,生成JavaBean功能移除用户模板配置。 17、新增TableGo官网:http://www.tablego.cn 18、新增数据信息界面,定时从官网更新数据,捐赠名单也自动从官网更新数据。 19、新增TableGo新本提示功能,如果官网有新本发布,客户端会有更新提醒。 20、性能优化并修复已知Bug。
可以通过Java代码自动创建数据库表。具体实现方式是通过JavaBean的属性来生成表的字段,然后根据JavaBean的类名来生成表名。以下是一个示例代码: ```java import java.beans.BeanInfo; import java.beans.Introspector; import java.beans.PropertyDescriptor; import java.lang.reflect.Method; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; public class CreateTable { public static void main(String[] args) { String url = "jdbc:mysql://localhost:3306/test"; String user = "root"; String password = "123456"; String className = "com.example.User"; Connection conn = null; Statement stmt = null; try { Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection(url, user, password); stmt = conn.createStatement(); // 获取JavaBean的属性信息 BeanInfo beanInfo = Introspector.getBeanInfo(Class.forName(className)); PropertyDescriptor[] pds = beanInfo.getPropertyDescriptors(); // 生成SQL语句 StringBuilder sb = new StringBuilder(); sb.append("CREATE TABLE "); sb.append(className.substring(className.lastIndexOf(".") + 1)); sb.append(" ("); for (PropertyDescriptor pd : pds) { String name = pd.getName(); if (!name.equals("class")) { sb.append(name).append(" VARCHAR(50),"); } } sb.deleteCharAt(sb.length() - 1); sb.append(")"); // 执行SQL语句 stmt.executeUpdate(sb.toString()); System.out.println("创建表成功!"); } catch (ClassNotFoundException | SQLException | IntrospectionException e) { e.printStackTrace(); } finally { try { if (stmt != null) stmt.close(); if (conn != null) conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } } ``` 这段代码通过Java的反射机制获取JavaBean的属性信息,然后生成对应的SQL语句,并执行该语句创建表。需要注意的是,该代码只是一个示例,实际应用中需要根据具体情况进行修改和完善。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 21
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

vipbooks

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值