SqlSessionFactory
为
Mybatis
的核心,可创建
SqlSession
,对
sql
执行操作
String resource = "mybatis-cong.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new
SqlSessionFactoryBuilder().build(inputStream);
SqlSession session=sqlSessionFactory.openSession();
一对多:
collection
(
xml
方式)
<resultMap type="Category" id="categoryBean">
<id column="cid" property="id" />
<result column="cname" property="name" />
<!--
一对多的关系
-->
<!-- property:
指的是集合属性的值
, ofType
:指的是集合中元素的类型
-->
<collection property="products" ofType="Product">
<id column="pid" property="id" />
<result column="pname" property="name" />
<result column="price" property="price" />
</collection>
</resultMap>
@Results
、
@Result
、
@Many
(注解方式)
@Select(" select * from category_ ")
@Results({
@Result(property = "id", column = "id"),
@Result(property = "products", javaType = List.class, column = "id",
many = @Many(select =
"com.how2java.mapper.ProductMapper.listByCategory") )
})
多对一:
association
<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>
评论