Mybatis基本使用


概述

mybatis官方文档
采用 ORM 思想解决了实体和数据库映射的问题,对jdbc进行了封装,屏蔽了jdbc api底层访问细节。

使用步骤

  1. 定义与sql映射文件同名的mapper接口
  2. 设置sql映射文件的namespace属性为mapper接口的全限定名
  3. mapper接口中定义方法,方法名就是sql映射文件中sql语句的id,并保持参数类型和返回值类型一致
  4. 编码(获取mapper接口的代理对象,调用对应的方法完成sql执行)
    即:编写接口方法——>编写sql——>执行方法

注意点

  • 实体类属性名和数据库表列名不一致,不能自动封装数据。有以下两种常用方式

    • 起别名
    • 使用resultMap
      
          
          
          
          
          
          
              
              
              
          
          
          
              
              
              
                  
              
              
                  
              
          
      
      

  • 编写sql的parameterType可以省略

      
    
  • 编写sql特殊字符处理

    • 转义字符,如<
    • CDATA区
  • mybatis核心配置文件指定映射配置

      
      
          
          
    
          
          
      
    

  • 参数传递

    1. 散装参数
        User getUserInfoMapper(@Param("name") Integer id, @Param("sex") String sex);
    2. 实体类封装参数
        User getUserInfoMapper(User user);
    3. map集合
        map.put("name","zs");
        User getUserInfoMapper(Map map);
    4. collection集合
        Collection list = new ArrayList();
        list.add(1);
        List getUserInfoMapper(@Param("list") Collection list);
        使用标签     
    
  • 动态sql拼接

    
    
    
    

demo源码下载-mybatisuse-blog
demo源码下载-mybatisuse-account

学习来源:https://www.bilibili.com/video/BV1Qf4y1T7Hx?p=47