通用mapper将另外一个同名的表生成在同一个实体及mapper中
今天遇见了一个在网上都搜索不到的错误,使用通过mapper生成实体及mapper文件时会将另外一个数据库的同名文件生成在一个实体及mapper中,这样就会造成一个实体和mapper中有两个表的字段,经过很久的排查终于发现了是MySQL 8.0的问题,解决方法是在generatorConfiguration.xml文件中加上<property name="nullCatalogMeansCurrent" value="true" />
报错前:
<jdbcConnection driverClass="com.mysql.cj.jdbc.Driver" connectionURL="jdbc:mysql://127.0.0.1:3306/media?serverTimezone=GMT%2B8" userId="root" password="mysql123456"> </jdbcConnection>
修改后:
<jdbcConnection driverClass="com.mysql.cj.jdbc.Driver" connectionURL="jdbc:mysql://127.0.0.1:3306/media?serverTimezone=GMT%2B8" userId="root" password="mysql123456"> <property name="nullCatalogMeansCurrent" value="true" /> </jdbcConnection>
之后再生成就不会出错了