MaBatis之Mapper.xml的配置(單表的增刪改查操作)

<?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">
<!--namespace是對應的dao層接口-->
<mapper namespace="dao.StudentMapper">
    <!--id就是方法的名稱  parameterType參數的類型-->
    <insert id="insertOne" parameterType="entity.Student">
    <!--#代表的是javaBean對象的屬性,用來設置sql語句中的位置的數據 -->
        INSERT INTO st_student VALUE (DEFAULT,#{stuName},#{sex},#{birthDate},#{address})
    </insert>
    <delete id="deleteById" parameterType="int">
    <!--因爲這裏參數是單個屬性所以#就代表這個屬性 -->
        DELETE FROM st_student where id=#{id}
    </delete>
    <update id="updateInfo" parameterType="entity.Student">
        UPDATE st_student
        <!-- test中的stuName是javaBean的屬性
        加了if判斷以後就是選擇字段更新否則就是全字段更新
        set標籤替換了  UPDATE st_student set的set
        並且去去掉了逗號
        -->
        <set>
        <if test="stuName!=null and stuName!=''">
        stuName=#{stuName},
        </if>
        <if test="sex!=null and sex!=''">
            sex=#{sex},
        </if>
        <if test="birthDate!=null">
            birthDate=#{birthDate},
        </if>
        <if test="address!=null and address!=''">
            address=#{address}
        </if>
        </set>
             WHERE id=#{id};

    </update>
    <!-- resultType作爲返回值類型(前提Bean對象的屬性名稱和數據庫中屬性名稱完全相等) 查詢最好全字段名稱儘量不用*-->
    <select id="findById" parameterType="int" resultType="entity.Student">
        SELECT id,stuName,sex,birthDate,address from st_student WHERE id = #{id}
    </select>
    <!--返回的是list集合和普通的一樣不用單獨設置-->
    <select id="findAll" resultType="entity.Student">
              SELECT id,stuName,sex,birthDate,address from st_student
    </select>
</mapper>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章