按照查阅到的方法,不要忘记删除已生成的mapper.xml,重新生成。最后干脆重新来一遍。 在使用Mybatis逆向工程连接MySql数据库生成代码的时,某个类中出来了数据库连接地址中指定数据库表里面没有的字段 如图,我在jdbc.properties指定表为sms 解决办法是在Mybatis逆向工程的配置文件里的数据库连接地址中添加下列参数:nullCatalogMeansCurrent=true 修改后是: 另一种方案是: 以上两种都可以[WARNING] Table Configuration product matched more than one table (demo..product,shop..product,sms..product)
今天用逆向工程时,发现生成的xml有700多行,而且对应的方法生成了三次,所以导致java.lang.IllegalArgumentException
然后查阅资料解决办法:
使用mybatis逆向工程多次生成mapper时,未将之前生成的mapper.xml删除,导致其在原有的xml里追加内容。最终导致BaseResultMap重复。但是还没解决,最后找到了,现记录下来,防止更多同学踩坑。解决方法:
结果还是不行
最后再认真仔细看提示信息发现:一条警告信息
[WARNING] Table Configuration product matched more than one table (demo…product,shop…product,sms…product)
MyBatis Generator 生成器把其他数据库的同名表同时生成下来,所以生成了三个,也就是700多行
但是警告信息却:[WARNING] Table Configuration product matched more than one table (demo…product,shop…product,sms…product)
之前我是这样写的:<jdbcConnection driverClass="${driver}" connectionURL="${url}" userId="${username}" password="${password}"> </jdbcConnection>
<jdbcConnection driverClass="${driver}" connectionURL="${url}" userId="${username}" password="${password}"> <!-- connectionURL属性,防止乱码 --> <property name="useUnicode" value="true"/> <!-- connectionURL属性,防止乱码 --> <property name="characterEncoding" value="utf-8"/> <!-- connectionURL属性,防止报时间错误 --> <property name="serverTimezone" value="UTC"/> <!-- connectionURL属性,防止生成不同数据库同名表的代码 --> <property name="nullCatalogMeansCurrent" value="true"/> </jdbcConnection>
driver = com.mysql.cj.jdbc.Driver url = jdbc:mysql://localhost:3306/sms?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC&nullCatalogMeansCurrent=true username = root password = *** location = D:\maven\repository\mysql\mysql-connector-java\8.0.17\mysql-connector-java-8.0.17.jar
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算