四、MyBatis注解开发

  MyBatis中提供注解有:

    @Insert:实现新增
    @Update:实现更新
    @Delete:实现删除
    @Select:实现查询
    @Result:实现结果集封装
    @Results:可以与@Result 一起使用,封装多个结果集
    @One:实现一对一结果集封装
    @Many:实现一对多结果集封装
    @CacheNamespace:实现注解二级缓存的使用
  下面就常用注解:@Insert 、@Update、@Delete、@Select、@Result、@Results、@One、@Many示范

  一)MyBatis简单增删查改

    接口UserMapper:

      

     测试:

   

  删、改、查类推

  二)MyBatis复杂映射开发

    注解与mapper.xml对比(图片参考其他文档):

      

     同配置文件类似分为一对一、一对多、多对多分别实现(参考https://www.cnblogs.com/ilovebath/p/14490304.html进行对比)

    1)一对一

    实现:select * from neworder o, user u where o.uid = u.id

      分解为:select * from neworder o

          select * from user u where u.id=o.uid

    接口:

        

        

     测试:

      

    2)一对多

      实现:select *,o.id oid from user u left join neworder o on u.id=o.uid

        分解为:select * from user u

          select * from neworder o where o.uid = u.id

      接口:

        

         

      测试:

        

    3)多对多

      实现:select * from student s left join sc on s.id=sc.sid inner join course c on sc.cid=c.id

        分解为:select * from student s

          select * from course c , sc where c.id=sc.cid and sc.sid=s.id

      同上一对多处理

posted on 2021-03-06 17:04  池塘里洗澡的鸭子  阅读(53)  评论(0编辑  收藏  举报