Mybatis(2)——Mapper映射文件

1,增删改查

    <select id="SelectByID" resultType="zzz">
        select * from emp where id = #{id}
    </select>
<insert id="add" parameterType="zzz"> INSERT INTO emp(id,name,addr) VALUES (#{id},#{name},#{addr}) </insert> <update id="update" parameterType="zzz"> UPDATE emp SET NAME =#{name},addr=#{addr} WHERE id=#{id} </update> <delete id="del" parameterType="java.lang.Integer"> DELETE FROM emp where id=#{id} </delete>

这里注意,在接口的定义的时候,可以指定增删改的返回值:

int、long返回影响的行数  boolean返回是否执行成功

在生成sqlSession的时候,使用true那表示默认提交。否则需要使用sqlSession.commit()提交修改

SqlSession sqlSession=sqlSessionFactory.openSession(true);

自增主键:

    <!-- public void addEmp(Employee employee); -->
    <!-- parameterType:参数类型,可以省略, 
    获取自增主键的值:
        mysql支持自增主键,自增主键值的获取,mybatis也是利用statement.getGenreatedKeys();
        useGeneratedKeys="true";使用自增主键获取主键值策略
        keyProperty;指定对应的主键属性,也就是mybatis获取到主键值以后,将这个值封装给javaBean的哪个属性
    -->
    <insert id="addEmp" parameterType="com.atguigu.mybatis.bean.Employee"
        useGeneratedKeys="true" keyProperty="id" databaseId="mysql">
        insert into tbl_employee(last_name,email,gender) 
        values(#{lastName},#{email},#{gender})
    </insert>