双表联立

<?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.gm.dao.StudentDao">
    <resultMap id="studentMajor" type="com.gm.bean.Student">
        <id column="id" property="id"></id>
        <result column="studentName" property="studentName"></result>
        <result column="gender" property="gender"></result>
        <result column="phone" property="phone"></result>
        <result column="birthday" property="birthday"></result>
        <result column="mid" property="mid"></result>
        <association property="major" javaType="com.gm.bean.Major">
            <id column="majorId" property="id"></id>
            <result column="mbh" property="mbh"></result>
            <result column="mname" property="mname"></result>
            <result column="mdesc" property="mdesc"></result>
        </association>
    </resultMap>
    <!--查询全部学生-->
    <select id="findAll" resultMap="studentMajor">
        SELECT s.*,m.`mname`
        FROM `student`AS s ,`major` AS m
        WHERE s.`mid` = m.`id`
    </select>
    <!--添加学生-->
    <insert id="addStu" parameterType="com.gm.bean.Student">
        INSERT INTO student(studentName,gender,phone,birthday,mid)
        VALUES (#{studentName},#{gender},#{phone},#{birthday},#{mid});
    </insert>
    <!--删除学生-->
    <delete id="delStu" parameterType="Integer">
        delete from student where id =#{id}
    </delete>
    <!--根据id查询-->
    <select id="findById" parameterType="Integer" resultType="Student">
        select * from student where id = #{id}
    </select>
    <!--更新学生-->
    <update id="updStu" parameterType="Student">
        update student set studentName = #{studentName},gender = #{gender},phone = #{phone},birthday = #{birthday},mid = #{mid} where id = #{id}
    </update>
    <!--模糊查询-->
    <select id="findByMh" parameterType="String" resultMap="studentMajor">
        SELECT s.*,m.`mname`
        FROM `student`AS s ,`major` AS m
        WHERE s.`mid` = m.`id`
        AND s.studentName LIKE CONCAT('%',#{studentName},'%')
    </select>
</mapper>

你可能感兴趣的:(双表联立)