GreedyStar / generator

Java code generating tool.
Apache License 2.0
259 stars 122 forks source link

发现一个bug啊 #10

Open yangmingliang opened 4 years ago

yangmingliang commented 4 years ago

ConnectionUtil类 /**

这里catalog为null时,数据库存在不同schema有相同的表名和表结构会出现生成实体类里面有重复字段和方法,建议可以把catalog参数加上

GreedyStar commented 4 years ago

ConnectionUtil类 /**

  • 获取表结构数据
  • @param tableName 表名
  • @return 包含表结构数据的列表 */ public List getMetaData(String tableName) throws Exception { // 获取列信息 List columnInfos = new ArrayList<>(); ResultSet columnResultSet = connection.getMetaData().getColumns(null, getSchema(connection), tableName.toUpperCase(), "%");

这里catalog为null时,数据库存在不同schema有相同的表名和表结构会出现生成实体类里面有重复字段和方法,建议可以把catalog参数加上

感谢您的关注,可否详细描述下您所使用的数据库类型、数据库版本以及JDBC驱动版本,方便我来复现和定位问题。

yangmingliang commented 4 years ago

mysql数据库 版本5.7.26-log mysql-connector-java:8.0.13

yangmingliang commented 4 years ago

博主有考虑过把这个做成maven插件么

GreedyStar commented 4 years ago

mysql数据库 版本5.7.26-log mysql-connector-java:8.0.13

这个问题我已经有在关注了,1.4.0版本将会修复这个问题。 出现这个问题是因为 8.0.* 版本的驱动修改了关于catalog参数的默认值,所以会读取所有数据库中的同名表。 1.4.0中工具会支持swagger、lombok、jpa、myabtis-plus等更多的代码结构,还请多多关注。 后续功能比较完善了我会考虑做成maven插件。 最后,再次感谢您的关注。