我是靠谱客的博主 单身红酒,最近开发中收集的这篇文章主要介绍MyBatis Generator 生成器把其他数据库的同名表生成下来的问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

文章目录

【问题】
  使用MyBatis Generator生成器时,发现Mapper文件中出现字段与连接数据库不符,经过查找发现该表是其他数据库的同名表的字段。

【解决问题】
  在构造文件中,这里是generatorConfig.xml添加连接数据库参数 nullCatalogMeansCurrent=true

<jdbcConnection connectionURL="jdbc:mysql://服务器地址:端口号/数据库名?serverTimezone=GMT%2B8"
     driverClass="com.mysql.cj.jdbc.Driver" password="ahbcd0306" userId="xlj" >
    
    <property name="nullCatalogMeansCurrent" value="true"/>
 </jdbcConnection>

【注解】
  ????这里通过两种方式可设置连接参数。第一种直接在数据库名后面加 “?参数name=参数value”,第二种通过 property 标签设置参数name,value。

????MySql不能正确支持SQL目录和架构。如果 在MySql中运行 create schema 命令,它实际上会创建一个数据库 - 并且JDBC驱动程序将其作为目录报告回来。但是MySql语法不支持标准的catalog..table SQL语法。因此,最好不要在生成器配置中指定目录或模式。只需指定表名并在JDBC URL中指定数据库即可。

如果您使用的是Connector / J的8.x版,您可能会注意到生成器尝试为MySql信息模式(sys,information_schema,performance_schema等)中的表生成代码。这可能不是您想要的!要禁用此行为,请将属性“nullCatalogMeansCurrent = true”添加到JDBC URL。
在这里插入图片描述
 ????有关时区 serverTimezone 说明参考
 https://gblfy.blog.csdn.net/article/details/116022120

最后

以上就是单身红酒为你收集整理的MyBatis Generator 生成器把其他数据库的同名表生成下来的问题的全部内容,希望文章能够帮你解决MyBatis Generator 生成器把其他数据库的同名表生成下来的问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(42)

评论列表共有 0 条评论

立即
投稿
返回
顶部