Mybatis的字段匹配
在开发中,有时会遇见数据库的字段和实体类中的属性名不一致的情况,这种情况虽然可以用起别名的方法来解决,但这无疑使开发的效率降低。
所以在MyBatis中提供了resultMap的配置。具体代码如下
<!-- 当数据库列名与java实体类中的字段名不一致时,使用该配置 -->
<resultMap id="goodsMap" type="com.imis.pojo.Goods">
<!-- 配置主键 -->
<id property="goods_id" column="id"></id>
<!-- 其他字段 -->
<result property="goods_name" column="name"></result>
<result property="goods_price" column="price"></result>
</resultMap>
property是实体类中的属性名,column是数据库中表的字段名,这样的对应关系可以在后续的查询中不再关注属性名与字段名是否匹配得上的问题。
在后续的使用中,如查询,不必再resultSetType中指明实体类,只需要将resultMap对应上上述的id,即goodsMap,就可以使用该配置。
<select id="queryAll" resultMap="goodsMap" >
select * from goods
</select>