MyBatis Generator 生成器把其他数据库的同名表生成下来的问题
MyBatis Generator 生成器把其他数据库的同名表生成下来的问题
一、问题回顾
在开发酒店预定系统
后端接口的过程中,在开发到UserController
时候,发现有些数据库中存在的字段中,在mybatis generator
生成的model
与mapper
的代码中无对应的属性与方法。
于是我查看了model
包中User
类中代码,发现里面的属性方法,与上一个项目新闻网站
中的User
类一致,于是我便用mybatis generator
重新生成,发现每次生成的都是与新闻网站
中的User
类一致。
观察控制台发现有一个警告,[WARNING] Table Configuration user matched more than one table (mysql..user,myhotel_spring..user,wsbg..user,newsdb..user)
user匹配超过一个表。
确实这两个数据库中,都有user表。
二、解决方案
解决办法是在Mybatis
逆向工程的配置文件里的数据库连接地址中添加下列参数:nullCatalogMeansCurrent=true
在generatorConfig.xml
文件中原先我是这样写的。
1 | <!--数据库连接的信息:驱动类、连接地址、用户名、密码 --> |
修改后为:
1 | <!--数据库连接的信息:驱动类、连接地址、用户名、密码 --> |
也可这样写:
1 | <jdbcConnection |
无任何警告报错: