• Sql映射文件


    1.sql映射的xml文件

    MyBatis 真正的强大在于映射语句,专注于SQL,功能强大,SQL映射的配置却是相当简单

    SQL映射文件的几个顶级元素(按照定义的顺序)

    mapper – namespace
    cache – 配置给定命名空间的缓存
    cache-ref – 从其他命名空间引用缓存配置
    resultMap –用来描述数据库结果集和对象的对应关系
    sql – 可以重用的SQL块,也可以被其他语句引用
    insert – 映射插入语句
    update – 映射更新语句
    delete – 映射删除语句
    select – 映射查询语句

    2.mapper元素

    namespace:命名空间 namespace和子元素的id联合保证唯一,区别不同的mapper

    绑定DAO接口 namespace的命名必须跟某个接口同名 接口中的方法与映射文件中SQL语句id一一对应

    3.parameterType元素

    基础数据类型 int、String、Date等 只能传入一个,通过#{参数名}即可获取传入的值

    复杂数据类型 Java实体类、Map等 通过#{属性名}或者#{map的keyName}即可获取传入值

    4.

    resultMap属性
    id:
    resultMap的唯一标识
    type:
    Java实体类
    resultMap子元素
    id
    一般对应数据库中该行的主键id,设置此项可提高MyBatis性能
    result
    映射到JavaBean的某个“简单类型”属性
    association
    映射到JavaBean的某个“复杂类型”属性,比如JavaBean类
    collection
    映射到JavaBean的某个“复杂类型”属性,比如集合
    association
    复杂的类型关联,一对一
    内部嵌套
    映射一个嵌套JavaBean属性
    属性
    property:映射数据库列的实体对象的属性
    javaType:完整Java类名或者别名
    resultMap:引用外部resultMap
    子元素
    id
    result
    property:映射数据库列的实体对象的属性
    column:数据库列名或者别名
    collection
    复杂类型集合,一对多
    内部嵌套
    映射一个嵌套结果集到一个列表
    属性
    property:映射数据库列的实体对象的属性
    ofType:完整Java类名或者别名(集合所包括的类型)
    resultMap:引用外部resultMap
    子元素
    id
    result
    property:映射数据库列的实体对象的属性
    column:数据库列名或者别名
  • 相关阅读:
    myBatis源码解析-二级缓存的实现方式
    手写mybatis框架-增加缓存&事务功能
    手写mybatis框架
    myBatis源码解析-配置文件解析(6)
    myBatis源码解析-类型转换篇(5)
    myBatis源码解析-反射篇(4)
    myBatis源码解析-数据源篇(3)
    myBatis源码解析-缓存篇(2)
    Linux Centos下SQL Server 2017安装和配置
    VS2019 查看源码,使用F12查看源码
  • 原文地址:https://www.cnblogs.com/www-tty-com/p/13961096.html
Copyright © 2020-2023  润新知