问题:
使用MyBatis Generator生成器时,发现Mapper文件中出现字段与连接数据库不符,经过查找发现该表是其他数据库的同名表的字段。
解决办法:
办法1:
在构造文件中,这里是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>
办法二
解决方法:在generatorConfig.xml配置文件中的table元素中加入catalog属性(数据库名):
<table tableName="user" catalog="mybatisdemo" domainObjectName="User" delimitIdentifiers="true">
<!-- <property name="useActualColumnNames" value="true" /> -->
<property name="ignoreQualifiersAtRuntime" value="true"/>
<generatedKey column="id" sqlStatement="JDBC" />
</table>
网上查找都是以上两种解决办法,却依然没有办法解决问题:
添加一个schema字段解决这个问题:
<table catalog="GPOWERGIS" tableName="EV_LOOPINFOR" schema="GPOWERGIS" >
<!--<property name="ignoreQualifiersAtRuntime" value="true"/>-->
</table>