版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
<sql> 和 <include>
1. 源码下载:
参看06-MyBatis_关联映射之多对一的下载
2. 功能:
<sql>封装SQL语句, <include>调用
如:
<sql id="columns">
id, name, address
</sql>
<select ....>
select <include refid="columns"/> from user
</select>
3. 使用:
-
/*
-
<sql id="mySQL">
-
SELECT o.*, p.*
-
FROM orders o
-
JOIN person p ON (p.personId=o.pid)
-
WHERE o.orderId = 'O_00001'
-
</sql>
-
-
<select id="selectOrderById2" parameterType="string" resultMap="orderMap">
-
<include refid="mySQL"/>
-
</select>
-
*/
@Test
public void testSelectOrderById2() throws Exception {
-
SqlSession session = sqlSessionFactory.openSession();
-
-
Order order = session.selectOne(
"com.hehe.mybatis.domain.Order.selectOrderById2",
"O_00001");
-
System.out.println(
-
order.getId() +
"\t" +
-
order.getNumber() +
"\t" +
-
order.getPrice() +
"\t" +
-
order.getPerson().getId() +
"\t" +
-
order.getPerson().getName() +
"\t" +
-
order.getPerson().getAddress() +
"\t" +
-
order.getPerson().getTel()
-
);
-
session.close();
-
}