【MyBatis】学习笔记11:解决字段名和属性的映射关系

【Mybatis】学习笔记01:连接数据库,实现增删改

【Mybatis】学习笔记02:实现简单的查

【MyBatis】学习笔记03:配置文件进一步解读(非常重要)

【MyBatis】学习笔记04:配置文件模板

【MyBatis】学习笔记05:获取参数值的两种方式

【MyBatis】学习笔记06:各种查询所返回数据的数据类型

【MyBatis】学习笔记07:模糊查询

【MyBatis】学习笔记08:批量删除

【MyBatis】学习笔记09:批量删除

【MyBatis】学习笔记10:添加功能获取自增的主键

在数据库中,字段名使用了下划线

java实例化对象中String重写,使用的名字是驼峰命名法

若字段名和实体类中的属性名不一致,则可以通过resultMap设置自定义映射,即使字段名和属性名一致的属性也要映射,也就是全部属性都要列出来

为字段起别名,保持和属性名一致

<!--List<Emp> getAllEmp();-->
<select id="getAllEmp" resultType="Emp">
	select eid,emp_name empName,age,sex,email from t_emp
</select>

通过全局配置解决字段名和属性的映射关系

<!-- mybatis-config.xml-->

<!--    将_自动映射为驼峰,例如 emp_name映射为empName-->
    <settings>
        <setting name="mapUnderscoreToCamelCase" value=""/>
    </settings>

通过resultMap解决字段名和属性名的映射关系

resultMap:设置自定义映射关系

id:唯一标识 不能重复

type:设置映射关系中的实体类的类型

子标签:

id:设置元素主键的映射关系

result:设置普通字段的映射关系

属性:

property:设置映射关系中的属性名,必须是type属性所设置的实体类类型中的属性名

column:设置映射关系中的字段名,必须是sql语句中查询的字段名

<resultMap id="empResultMap" type="User">
    <id property="id" column="userId"></id>
    <result property="name" column="userName"></result>
    <result property="count" column="userCount"></result>
    <result property="pwd" column="userPassword"></result>
</resultMap>
<!--    List<User> getAll();-->
    <select id="getAll" resultMap="empResultMap">
        select * from t_users
    </select>
posted @ 2022-03-28 09:52  萌狼蓝天  阅读(156)  评论(0编辑  收藏  举报