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>

 

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