【MyBatis】sql列名与实体类属性名不同的解决方式
生活随笔
收集整理的這篇文章主要介紹了
【MyBatis】sql列名与实体类属性名不同的解决方式
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
sql列名與Java實體類屬性名不同的解決方式
例如:
數(shù)據(jù)庫
CREATE TABLE orders(order_id INT PRIMARY KEY AUTO_INCREMENT,order_no VARCHAR(20),order_price FLOAT );Java實體類
public class Orders {private int id;private String orderNo;private float price;// ... get,set方法省略 }這時候字段名與實體類名沖突,解決方法如下:
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.zhiyou100.hhz.dao.OrderDao"><!-- selectAll1為錯誤演示,查詢結(jié)果為null --><select id="selectAll1" resultType="com.zhiyou100.hhz.bean.Orders">select order_id,order_no,order_price from orders</select><!-- 方法1:通過resultMap標簽和屬性可以使數(shù)據(jù)庫字段名與java實體類名產(chǎn)生映射 --><resultMap type="com.zhiyou100.hhz.bean.Orders" id="OrderMap"><id column="order_id" property="id"/><result column="order_no" property="orderNo"/><result column="order_price" property="price"/></resultMap><select id="selectAll2" resultMap="OrderMap">select order_id,order_no,order_price from orders</select><!-- 方法2:起別名,在寫select查詢字段名時起個和實體類一樣的名即可,比較low... --><select id="selectAll3" resultType="com.zhiyou100.hhz.bean.Orders">select order_id id,order_no orderNo,order_price price from orders</select></mapper>總結(jié)
以上是生活随笔為你收集整理的【MyBatis】sql列名与实体类属性名不同的解决方式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【MyBatis】Mybatis的jav
- 下一篇: 【Docker】Docker操作常用命令