`

mybatisSQL语句映射文件解析

阅读更多
来自:http://limingnihao.iteye.com/blog/781878
mybatisSQL语句映射,跟Hibernate的实体关系映射的XML很相似,用在这里其实就是实体映射和相关的SQL语句的映射。
我关心的内容是:
1、实体XML映射文件的标签
--------SQL 映射XML 文件一些初级的元素:
1. cache – 配置给定模式的缓存
2. cache-ref – 从别的模式中引用一个缓存
3. resultMap – 这是最复杂而却强大的一个元素了,它描述如何从结果集中加载对象
4. sql – 一个可以被其他语句复用的SQL 块
5. insert – 映射INSERT 语句
6. update – 映射UPDATE 语句
7. delete – 映射DELEETE 语句
8. select  -  映射SELECT语句
2、ResultMap的标签和属性
---resultMap属性:type为java实体类;id为此resultMap的标识。
---resultMap可以设置的映射:
1. constructor – 用来将结果反射给一个实例化好的类的构造器
a) idArg – ID 参数;将结果集标记为ID,以方便全局调用
b) arg –反射到构造器的通常结果
2. id – ID 结果,将结果集标记为ID,以方便全局调用
3. result – 反射到JavaBean 属性的普通结果
4. association – 复杂类型的结合;多个结果合成的类型
a) nested result mappings – 几resultMap 自身嵌套关联,也可以引用到一个其它上
5. collection –复杂类型集合a collection of complex types
6. nested result mappings – resultMap 的集合,也可以引用到一个其它上
7. discriminator – 使用一个结果值以决定使用哪个resultMap
a) case – 基本一些值的结果映射的case 情形
i. nested result mappings –一个case 情形本身就是一个结果映射,因此也可以包括一些相同的元素,也可以引用一个外部resultMap。
3、SQL映射语句的属性
id  --  映射标识
parameterType -- 参数类型
resultMap --  resultMap的引用
4、在SQL隐射中引用ResultMap
<resultMap type="ClassEntity" id="classResultMap"> 
    <id property="classID" column="CLASS_ID" /> 
....
</resultMap>

<select id="getTeacher" parameterType="String"  resultMap="teacherResultMap"> 
    SELECT * 
      FROM TEACHER_TBL TT 
     WHERE TT.TEACHER_ID = #{teacherID} 
</select> 
分享到:
评论

相关推荐

    深入探索MyBatis:全局配置文件解析及应用优化策略

    相比于传统的JDBC,MyBatis的主要优势在于它能够通过配置文件将SQL语句与Java代码分离,使得数据库操作更加直观和易于管理。在本文中,我们将深入探讨MyBatis的全局配置文件解析以及如何通过优化配置来提升应用性能...

    根据mybatis/ibatis sqlmapper文件解析生成数据库表

    这应该是一个Java类,它负责读取MyBatis或iBatis的SQL映射文件,解析其中的SQL语句和映射元素,然后根据这些信息生成创建数据库表的DDL语句。 在解析SQL映射文件时,`Sqlmap2Table.java` 可能会使用DOM(Document ...

    Mybatis高级映射查询

    2. 映射文件与 XML 映射元素:Mybatis 的映射文件通常以 `.xml` 结尾,如 `mybatis3.xml`,它包含了 SQL 语句和结果集映射。在映射文件中,`&lt;select&gt;`, `&lt;insert&gt;`, `&lt;update&gt;`, `&lt;delete&gt;` 元素分别对应 SQL 的查询...

    MyBatis:SQL映射框架的深度探索.pdf

    - **SQL映射文件**:这是MyBatis的核心配置文件之一,它定义了SQL语句与Java方法之间的映射关系。通过XML文件或注解的方式,开发者可以明确指定如何将Java对象的属性映射到数据库表的列上,以及如何执行各种数据库...

    mybatis3.x源码深度解析与最佳实践.pdf

    mapper 的加载与初始化是 MyBatis 中的另一个核心机制,该机制负责将 mapper 文件解析成可执行的 SQL 语句。 3. 关键对象总结与回顾 3.1 SqlSource SqlSource 是 MyBatis 中的核心对象之一,该对象负责将 SQL ...

    MyBatis关联映射代码

    这种映射允许我们在查询时自动处理关联对象,而无需手动编写复杂的SQL语句。关联映射分为嵌套查询(Nested Select)和嵌套结果(Nested ResultMap)两种方式。 1. 嵌套查询:在查询主表数据时,通过子查询来获取...

    MyBatis源码分析.pdf

    映射文件解析入口是MyBatis的映射文件解析过程的入口点,负责将映射文件解析到MappedStatement对象中。MyBatis提供了多种映射文件解析方式,包括XML文件和注解等。 3.2 解析映射文件 解析映射文件是MyBatis的映射...

    MyBatis执行SQL并将结果映射成Java对象.docx

    映射文件(通常是XML或注解形式)则包含了具体的SQL语句和结果映射,使得MyBatis能够根据这些信息执行SQL并返回结果。 在MyBatis中,SqlSessionFactory是一个关键组件,它是通过解析配置文件创建的。...

    SpringMVC+Mybatis+SQLServer整合源码 含数据库文件

    3. 配置Mybatis:编写Mapper接口,创建对应的XML文件,定义SQL语句和结果映射。 4. 数据库连接配置:在Spring配置文件中配置数据源,如使用JDBC的BasicDataSource,设置URL、用户名和密码等信息。 5. 整合Mybatis和...

    Mybatis主配置文件、附配置文件、实体类、sql生成工具

    4. **Mappers**:配置Mybatis的映射文件路径,每个Mapper对应一个SQL映射文件,用于定义SQL语句和结果映射。 **二、附配置文件(Mapper XML文件)** Mapper XML文件是Mybatis的SQL映射文件,它包含了SQL语句和结果...

    mybatis-3-mybatis-3.5.13.zip

    MyBatis作为一个流行的持久化框架,其源码是开放的,允许开发者深入了解框架...MyBatis使用XML解析器解析映射文件,将SQL语句和数据库操作转化为Java对象。 4. SQL执行: 当执行SQL操作时,MyBatis会将映射文件。。。

    mybatis-dtd约束文件

    - MyBatis的XML映射文件用于定义SQL语句、结果映射、参数映射等。 - DTD在这个文件中起到约束和验证的作用,确保XML文件符合MyBatis的规范。 - 例如,`&lt;select&gt;`, `&lt;insert&gt;`, `&lt;update&gt;`, `&lt;delete&gt;`元素都是由...

    MyBatis的奇幻之旅:SQL结果映射至对象的魔法

    1. **SQL 映射**:MyBatis 允许将 SQL 语句映射到 Java 方法上,这可以通过 XML 文件或 Java 注解来完成。 2. **接口定义**:开发者可以定义一个 Java 接口,MyBatis 会根据接口方法的名称自动解析出相应的 SQL 语句...

    详解MyBatis直接执行SQL查询及数据批量插入

    批量插入的优点在于,它将多个插入操作合并为一个SQL语句,减少了网络传输和数据库解析SQL的时间,提高了效率。 总结起来,MyBatis提供了一种灵活的方式,允许开发者直接执行SQL查询和批量插入数据。在使用时,需要...

    MyBatis执行Sql的流程实例解析

    MyBatis是Java持久层框架,它提供了一个映射关系使得Java方法可以执行SQL语句。MyBatis执行Sql的流程实例解析是了解MyBatis框架的核心机制。下面我们将通过示例代码来详细介绍MyBatis执行Sql的流程实例解析。 首先...

    Mybatis输入映射 增删改查

    在Mybatis的XML映射文件中,我们可以使用`&lt;insert&gt;`, `&lt;update&gt;`, `&lt;delete&gt;`和`&lt;select&gt;`标签来定义SQL语句。在这些标签内部,可以使用`&lt;parameter&gt;`子标签来指定参数。例如,如果有一个User对象,我们可以通过`...

    mybatis 生成mysql对应映射文件

    MyBatis允许开发者通过XML或注解定义SQL语句,实现了SQL与Java代码的分离,提高了代码的可读性和可维护性。 `mysql-connector-java-5.1.6-bin.jar`是MySQL的JDBC驱动,用于连接Java应用程序和MySQL数据库。JDBC...

    MyBatis基本了解

    3. 处理操作请求:根据SQL的ID找到对应的MappedStatement,解析参数,生成最终的SQL语句,然后获取数据库连接执行SQL并获取结果。 4. 返回处理结果:将处理后的结果返回给调用者,并释放数据库连接资源。 创建...

    MyBatis全局映射文件实现原理解析

    MyBatis全局映射文件是MyBatis框架中不可或缺的一部分,它主要负责定义SQL语句、存储过程和其他数据库操作。全局映射文件通常以XML格式存在,与MyBatis的配置文件(mybatis-config.xml)结合使用,以实现数据库操作的...

    深入剖析MyBatis SQL执行流程:从配置到查询结果的全程追踪

    MyBatis是一个流行的Java持久层框架,它简化了数据库操作,允许开发者将SQL语句直接映射到Java方法。本文将深入探讨MyBatis的SQL执行流程,从配置解析到查询结果的返回,以及Spring如何整合MyBatis,特别是如何管理...

Global site tag (gtag.js) - Google Analytics