🚀 优质资源分享 🚀
学习路线指引(点击解锁) | 知识定位 | 人群定位 |
---|---|---|
🧡 Python实战微信订餐小程序 🧡 | 进阶级 | 本课程是python flask+微信小程序的完美结合,从项目搭建到腾讯云部署上线,打造一个全栈订餐系统。 |
💛Python量化交易实战💛 | 入门级 | 手把手带你打造一个易扩展、更安全、效率更高的量化交易系统 |
resultMap处理字段和属性的映射关系
如果字段名与实体类中的属性名不一致,该如何处理映射关系?
- 第一种方法:为查询的字段设置别名,和属性名保持一致
下面是实体类中的属性名:
private Integer empId;
private String empName;
private Integer age;
private String gender;
这是建表时设置的字段名:
emp_id emp_name age gender
我们只需要在Mapper.xml中在写sql语句时,对字段名进行设置别名,使得与属性名一致:
select emp_id empId,emp_name empName,age,gender from t_emp where emp_id = #{empId}
- 第二种方法:当字段符合Mysql要求使用下划线,而属性名符合Java要求使用驼峰,此时可以在Mybatis的核心配置文件中设置一个全局配置信息mapUnderscoreToCamelCase,就可以在查询表中数据时,自动将下划线类型的字段名转换为驼峰。
<settings>
<setting name="mapUnderscoreToCamelCase" value="true"/>
settings>
- 第三种方法:使用resultMap处理
<resultMap id="empResultMap" type="Emp">
<id column="emp\_id" property="empId">id>
<result column="emp\_name" property="empName">result>
<result column="age" property="age">result>