记一个mybatis中自动映射的问题

在使用Mybatis进行查询时,尽管数据库列名与Pojo属性名不一致且未设置任何映射,数据仍能自动映射。即使列名如`guide_price`改为`guitar`,Pojo类中没有无参构造方法时,属性依然能正确赋值。当添加无参构造方法后,映射失效。这个问题有待进一步探究。
摘要由CSDN通过智能技术生成

今天使用mybatis框架写一个简单查询时,发现数据库列名与pojo属性名不一致时可以自动映射赋值给pojo类的对象。

但我没有设置任何映射

  1. 查询语句没有设置as别名、
  2. mapper.xml中没有设置resultMap映射
  3. mybatis-config.xml中没有开启驼峰命名自动映射(mapUnderscoreToCamelCase|TRUE)

pojo类Car的属性名为id、carNum、brand、guidePrice、produceTime、carType
数据库列名如下

mysql> select * from t_car;
+----+---------+-----------+-------------+--------------+----------+
| id | car_num | brand     | guide_price | produce_time | car_type |
+----+---------+-----------+-------------+--------------+----------+
|  1 | 1001    | 宝马520   |       10.00 | 2020-10-11   | 燃油车   |
|  2 | 1002    | 奔驰E300L |       55.00 | 2020-11-11   | 新能源   |
|  3 | 2001    | 比亚迪秦  |       10.00 | 2020-10-01   | 混动     |
|  5 | 1003    | 丰田霸道  |       30.00 | 2000-10-11   | 燃油车   |
|  6 | 1003    | 丰田霸道  |       30.00 | 2000-10-11   | 燃油车   |
|  9 | 1003    | 丰田霸道  |       30.00 | 2000-10-11   | 燃油车   |
| 10 | 2001    | 比亚迪汉  |       30.00 | 2020-10
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值