MyBatis表关系

来源:互联网 发布:怎么开网络博客 编辑:程序博客网 时间:2024/06/06 14:17

MyBatis

首先实体类:

User

 

Orders

 

Dept

 

声明:关系构建全部都以查询user为主

UserMapper.xml

<mapper namespace="com.zhiyou.mapper.UserMapper"><!-- 包名.持久化类mapperXML;  随便写 -->

<resultMap type="com.zhiyou.model.User" id="userResult">

<!-- id主键 -->

<id column="u_id" property="u_id"/>

<!-- 其他的 -->

<result column="u_name" property="u_name"/>

<result column="u_age" property="u_age"/>

</resultMap>

<!-- set集合 -->

<resultMap type="com.zhiyou.model.User" id="user_ordersResult" extends="userResult">

<collection property="orders" ofType="com.zhiyou.model.Orders">

<id column="r_id" property="r_id"/>

<!-- 其他的 -->

<result column="r_name" property="r_name"/>

<result column="r_desc" property="r_desc"/>

</collection>

</resultMap>

<select id="findUser_Orders" resultMap="user_ordersResult">

<!-- 查处user的信息和订单的信息 -->

select * from user u  left join orders o on u.u_id=o.u_id

</select>

<resultMap type="com.zhiyou.model.User" id="user_Dept" extends="userResult">

<!-- 对一的关系 -->

<association property="dept" javaType="com.zhiyou.model.Dept">

<id column="d_id" property="d_id"/>

<!-- 其他的 -->

<result column="d_name" property="name"/>

</association>

</resultMap>

<select id="findUser_Dept" resultMap="user_Dept">

<!-- 查处user的信息和订单的信息 -->

select * from user u  left join dept d on u.d_id=d.d_id

</select>

<resultMap type="com.zhiyou.model.User" id="user_Dept_Orders" extends="user_ordersResult">

<!-- 对一的关系 -->

<association property="dept" javaType="com.zhiyou.model.Dept">

<id column="d_id" property="d_id"/>

<!-- 其他的 -->

<result column="d_name" property="name"/>

</association>

</resultMap>

 

<select id="findUser_Dept_Orders" resultMap="user_Dept_Orders">

<!-- 查处user的信息和订单的信息 -->

select * from user u  left join dept d on u.d_id=d.d_id left join orders o on u.u_id=o.u_id

</select>

</mapper>

Test

 

原创粉丝点击