一對一(一個學生一個地址)

import java.util.List;

import com.java1234.model.Student;

public interface StudentMapper {

    public int add(Student student);

    public int update(Student student);

    public int delete(Integer id);

    public Student findById(Integer id);

    public List<Student> find();

    public Student findStudentWithAddress(Integer id);
}


<?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.java1234.mappers.StudentMapper">
    <resultMap type="Student" id="StudentResult">
        <id property="id" column="id"/>
        <result property="name" column="name"/>
        <result property="age" column="age"/>
        <association property="address" column="addressId" select="com.java1234.mappers.AddressMapper.findById"></association>
    </resultMap>

    <select id="findStudentWithAddress" resultMap="StudentResult" parameterType="Integer">
        select * from t_student t1,t_address t2 where t1.addressId=t2.id and t1.id=#{id}
    </select>

    <insert id="add" parameterType="Student"  >
        insert into t_student values(null,#{name},#{age})
    </insert>

    <update id="update" parameterType="Student">
        update t_student set name=#{name},age=#{age} where id=#{id}
    </update>

    <delete id="delete" parameterType="Integer">
        delete from t_student where id=#{id}
    </delete>

    <select id="findById" parameterType="Integer" resultType="Student">
        select * from t_student where id=#{id}
    </select>

    <select id="find" resultMap="StudentResult">
        select * from t_student
    </select>
</mapper>

3.mport com.java1234.model.Address;

public interface AddressMapper {

    public Address findById(Integer id);

}

4.<?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.java1234.mappers.AddressMapper">

    <resultMap type="Address" id="AddressResult">
        <result property="id" column="id"/>
        <result property="sheng" column="sheng"/>
        <result property="shi" column="shi"/>
        <result property="qu" column="qu"/>
    </resultMap>

    <select id="findById" parameterType="Integer" resultType="Address">
        select * from t_address where id=#{id}
    </select>

</mapper>  
發佈了43 篇原創文章 · 獲贊 8 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章