Mybatis的增删改查,主要学了一下几个功能:查询所有,查看详情,动态条件查询,单条件动态查询,添加功能,修改功能,根据id功能删除,批量删除。还有参数传递的一些底层原理。

  查询所有:在mapper接口中定义一个方法:List<Brand>  selectAll(),在mapper.xml配置文件中编写sql语句<select id="selectAll resultMap=brandResultMap" > select * from tb_user;  </select>

这个brandResultMap是一个用来完成映射的标签,因为表的列名和实体类的属性名有时候不一样会导致执行sql时没有参数值为null,所以需要设置brandResultMap,id是brandResultMap的唯一标识,就像其他标签中的id一样,然后type中定义返回的结果类型。在这个标签中id指定主键字段的标识属性,result指定一般字段的标识属性。在id或者result标签中,column中写的是表的字段名,propert中写实体属性名,总之就是谁不一样就把谁写上去。

mybatis增删改查项目demo mybatis增删改查标签_mybatis增删改查项目demo

 

 查看详情:查看详情是根据表中id,来查看对象的详情 ,在mapper.xml文件中编写sql为 <select  id ="selectById"  resultMap="brandReultMap"> select * from tb_brand where id = #{id};</select>

 动态条件查询:当查询条件很多,而且不确定时,需要用到动态条件查询,需要用到<if>标签判断输入的查询参数是否为null(空值),还有<where>标签,这个标签是防止出现sql语句的拼接错误。

mybatis增删改查项目demo mybatis增删改查标签_mybatis增删改查项目demo_02

单条件查询:当查询条件是可以选择的,但是每次只能查询一次时,就要用到单条件查询 ,<choose>标签相当于switch,<when>标签相当于case

mybatis增删改查项目demo mybatis增删改查标签_mybatis增删改查项目demo_03

 

添加功能:添加功能就是 add 然后需要注意的时是:标签中设置useGeneratedKeys="true"  keyProperty="id"这两个属性可以在执行sql的结果后能得到id号

mybatis增删改查项目demo mybatis增删改查标签_条件查询_04

 修改功能:update  tb_brand set ...where id = #{id};。修改功能中也需要用<if>标签判断输入的更改参数是否为空,然后<set>标签就有点类似于<where>标签,是为了防止sql语句拼接错误。

mybatis增删改查项目demo mybatis增删改查标签_mybatis增删改查项目demo_05

  删除功能:

<delete id="delectById"> 
delete from tb_brand where id = #{id};
</delete>

批量删除:删除多个,把id号存在数组当中,然后遍历数组得到id,再根据id进行删除

mybatis增删改查项目demo mybatis增删改查标签_封装_06

 

 参数传递:讲解调用接口的select,update方法的时候,参数是怎么传进去的

1.多个参数:封装成map集合,可以使用@Param注解

2.单个参数:pojo类型:直接使用,属性名和参数占位符名称一致

Map集合:直接使用,键名和参数占位符名称一致

Collection:封装成map集合,可以使用@Param注解,替换map集合中默认的arg键名

List:封装成map集合,。。。。

Array:封装成map集合

其他类型:直接使用

mybatis增删改查项目demo mybatis增删改查标签_封装_07