【MyBatis】学习笔记009--基于注解的CRUD

mybatis的CRUD有两种编写方式,注解方式如下:

注解方式

前提

将Mapper绑定到核心配置文件,这里因为是注解方式,没有xml配置文件,需要绑定的是mapper类(即dao类)

<mappers>
    <mapper class="xxx.xxx.xxx.xxxMapper"/>
</mappers>

1.select

//查询全部
@Select("select * from user")
List<User> selectAllUsers();

//根据id查询,注意#{}要与@Param内保持一致
@Select("select * from user where id=#{id}")
User selectUserById(@Param("id") Integer id);

//多个参数时
@Select("select * from user where id=#{id} and name = #{name}")
User selectUser2(@Param("id") Integer id,@Param("name") String name);

2.update

@Update("update user set name = #{name} where id = #{id}")
int updateUserNameById(@Param("id") Integer id,@Param("name") String name);

3.insert

@Insert("insert into user (id,name,pwd) values (#{id},#{name},#{pwd})")
int insertUser(User user);

4.delete

@Delete("delete from user where id = #{id}")
int deleteUser(Integer id);

xml方式与注解方式比较

xml方式在开发过程中需要更多的文件,编写起来相对会比较麻烦,代码量也会相对大一些;而注解方式操作文件数量少,代码量少,编写简单。

对比起来,如果是简单的业务逻辑或者项目体量小,注解方式可能会让开发者感觉更加的清晰、友好,但是如果业务逻辑复杂、项目体量庞大,且需要实现复杂的业务关系,那么xml方式则更胜一筹。

另:关于@Param()注解

1.基本类型的参数或者String类型,需要加上
2.引用类型不需要加
3.如果只有一个基本类型的话,可以忽略,但是建议都加上
4.在SQL中引用的就是我们这里的@Param()中设定的属性名

posted @ 2021-01-27 16:24  AirCL  阅读(72)  评论(0编辑  收藏  举报