目录
可能原因:
Mybatis错误:
解决方法:
方法演示:
启动类扫描包错误
解决方法:
MyBatis配置错误
MyBatis代码错误
数据库错误
报错信息:
错误原因:
客户端操作数据库的时候,(增删改查)无作用,可能是mybatis的错误,仔细查看这些方面,可能会有发现
可能原因:
Mybatis错误:
1、有多个Mybatis文件,如多个UserDao.xml。系统不知道运行哪个
解决方法:
Ctrl+点击调用的方法(自动回到所用接口的方法),再Ctrl点击接口方法,回到相应Mybatis的xml
方法演示:
可以看到,我这里有之前没有更新的xml文件,原因是用mybatis-generator工具创建过一次,没有删干净。因此,把另一个删掉。
启动类扫描包错误
解决方法:
在启动类上配置放置实体类接口的包,DAO包,使用@MapperScan(“dao包名”);
MyBatis配置错误
application.yml正确的Springboot项目中Mybatis应该是:
mybatis:
configuration:
map-underscore-to-camel-case: true #数据库表中的下划线自动那个转换成驼峰映射。
mapper-locations: classpath:mybatis/mapper*.xml #mapper文件的路径,这个路径下面的mapper.xml会被自动加载成mybatis的映射文件
MyBatis代码错误
正确的Mybatis的xml应像如下:
goods_id, title, img, good_type_id, orginal_price, price, on_sale, detail, `count`, merchant_name, evaluation_count select from goods where goods_id = #{goodsId,jdbcType=INTEGER}
数据库错误
报错信息:
如果后台会报这个错误,客户端就无法操作到数据库,看起来就是mybatisdao.xml没有作用。
java.sql.SQLException: Incorrect string value: 'xE8xA5xBFxE8xA5xBF' for column 'merchant_name' at row 1
错误原因:
1、数据库中的数据类型与实体类中的数据类型,或与mybatisDao.xml中的数据类型不一致
2、客户端输入的数据类型与数据库定义的数据类型不一致。此时注意输入。
3、数据库建立的时候的编码方式设置不是UTF-8,这时如果输入中文,后台也会报错。
解决方法:
修改数据库编码方式
alter table goods default character set utf8;已经建好的数据库如果这样不起作用,就修改报错参数编码
alter table goods change merchant_name merchant_name varchar(255) character set utf8;



