- 表
t_emp 字段: - 类
Emp 属性: - 查询方法:
Emp getEmpByEmpId(@Param("empId") Integer empId);
MySQL字段:“_” Java属性是驼峰命名 二者明显无法对应,因此在mapper中无法有效建立字段和属性的映射
处理字段和属性的映射关系的方式
1.通过别名设置匹配关系
通过MySQL的别名特性,在mapper中处理映射关系。
<select id="getEmpByEmpId" resultType="Emp">
SELECT * FROM t_emp WHERE emp_id = #{empId};
</select>
2.配置config文件mapUnderscoreToCamelCase
直接在配置文件中设置映射关系,无需修改mapper。
<settings>
<setting name="mapUnderscoreToCamelCase" value="true"/>
</settings>
3.resultMap 处理字段和属性的映射关系
在mapper中通过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>
<result column="gender" property="gender"></result>
</resultMap>
<select id="getEmpByEmpId" resultMap="empResultMap">
SELECT * FROM t_emp WHERE emp_id = #{empId};
</select>
|