Mybatis学习笔记10 注解

Mybatis提供了注解开发方式,用于替代Mapper.xml文件,我们可以直接用注解完成SQL的定义与绑定。

注解开发具体步骤:

1. 在DAO接口的方法上添加注解

    @Select("select id,username,password,gender,regist_time as registerTime from t_user")
    List<User> queryUsers();

2. 在主配置文件中修改注册方式

<mapper class="com.zt.DAO.UserDAO"/>

条件查询的注解方式:

    @Select("select id,username,password,gender,regist_time as registerTime\n" +
            "    from t_user" +
            "    where id = #{id}")
    User queryUserById(@Param("id") Integer id);

删除的注解方式:

    @Delete("delete from t_user\n" +
            "        where id = #{id}")
    Integer deleteUserById(@Param("id") Integer id);

更新的注解方式:

    @Update("update t_user\n" +
            "        set username = #{username},password = #{password},gender = #{gender},regist_time = #{registerTime}\n" +
            "        where id = #{id}")
    Integer updateUser(User user);

插入的注解方式:

    @Insert("insert into t_user values(#{id},#{username},#{password},#{gender},#{registerTime})")
    Integer insertUser(User user);

[重要]主键回填的注解:

    @Options(useGeneratedKeys = true, keyProperty = "id")
    @Insert("insert into t_user values(#{id},#{username},#{password},#{gender},#{registerTime})")
    Integer insertUser(User user);

useGeneratedKeys 表示是否使用了自增  keyProperty 表示要回填的属性列

值得注意的是,虽然注解免去了定义mapper.xml文件的麻烦,但是注解并不如mapper.xml文件灵活,如设置resultMap等等,同时,SQL和代码会耦合在一起。

猜你喜欢

转载自blog.csdn.net/qq_39304630/article/details/112303591