您好,登錄后才能下訂單哦!
本篇內容主要講解“Mybatis的多對一舉例分析”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Mybatis的多對一舉例分析”吧!
多對一
(1)修改Product.java,為Product增加category屬性
private int id; private String name; private float price; private Category category; setter,getter,tostring
(2)增加Product.xml
提供Product.xml,通過listProduct配置關聯查詢的sql語句。
然后通過resultMap ,進行字段和屬性的對應。
使用association 進行多對一關系關聯,指定表字段名稱與對象屬性名稱的一一對應關系
注: Category的id 字段 和Product的id字段同名,Mybatis不知道誰是誰的,所以需要通過取別名cid,pid來區分。name字段同理。
<mapper namespace="com.how2java.pojo"> <resultMap type="Product" id="productBean"> <id column="pid" property="id" /> <result column="pname" property="name" /> <result column="price" property="price" /> <!-- 多對一的關系 --> <!-- property: 指的是屬性名稱, javaType:指的是屬性的類型 --> <association property="category" javaType="Category"> <id column="cid" property="id"/> <result column="cname" property="name"/> </association> </resultMap> <!-- 根據id查詢Product, 關聯將Orders查詢出來 --> <select id="listProduct" resultMap="productBean"> select c.*, p.*, c.id 'cid', p.id 'pid', c.name 'cname', p.name 'pname' from category_ c left join product_ p on c.id = p.cid </select> </mapper>
(3)在mybatis-config.xml中增加對于Product.xml的映射
<mappers> <mapper resource="com/how2java/pojo/Category.xml"/> <mapper resource="com/how2java/pojo/Product.xml"/> </mappers>
(4)在TestManyToOne中
List<Product> ps = session.selectList("listProduct"); for (Product p : ps) { System.out.println(p+" 對應的分類是 \t "+ p.getCategory()); }
到此,相信大家對“Mybatis的多對一舉例分析”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。