<sql> 和 <include>
参看06-MyBatis_关联映射之多对一的下载
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();
}