<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lixing.ibatis.onetoone.mapper.PersonMapper">
<parameterMap type="Person" id="parameterPersonMap">
<parameter property="id"/>
<parameter property="name"/>
<parameter property="age"/>
</parameterMap>
<insert id="insertPerson" parameterMap="parameterPersonMap">
<selectKey keyProperty="id" resultType="int" order="AFTER">
SELECT LAST_INSERT_ID() AS ID
</selectKey>
INSERT INTO t_person(name,age)
VALUES(#{name},#{age})
</insert>
<resultMap type="Person" id="personMap">
<result property="id" column="id"/>
<result property="name" column="name"/>
<result property="age" column="age"/>
<association property="passport" column="id" javaType="Passport" select="com.lixing.ibatis.onetoone.mapper.PassportMapper.getPassport">
</association>
<!-- property:指Person中指向Passport对象的实例名称 -->
<!--select:指执行级联查询-->
</resultMap>
<select id="getPerson" resultMap="personMap" parameterType="int">
SELECT * FROM t_person
WHERE id=#{id}
</select>
</mapper>