`

mybatis中映射文件的resultType和resultMap

 
阅读更多

最近项目中要用到mybatis,在google上当了个案例看了下。加入连接数据库等配置。由于实体对象属性太多,测试案例中没有一一完全写出来。

在对象的映射文件中

<select id="getMotoTransLogList"  resultMap="MotoTransLogList">
       SELECT * FROM  MOTO_TRANS_LOG
  </select>

参考案例中resultMap这里为resultType。结果页面上读取不到数据,开始没考虑到数据库查询结果返回和实体对象的映射关系。问题最终解决为从新定义一个resultMap,列出我需要的字段和对象属性。

 

在使用mybatis通过id查询时mybatis自动映射数据库字段和实体类,当数据库字段与实体类的属性不一致时,mybatis就不能映射了,那么可以通过下面的配置映射:

配置一个返回的Map:

<!-- 当实体类属性跟数据库字段不一致时映射结果集 -->

<resultMap type="Person" id="result_person">

    <result property="name" column="t_name"/>

</resultMap>  

 

查询的时候resultType改为resultMap

 

<select id="selectOne" parameterType="int"  resultMap="result_person">

           select * from t_person where id=#{id}  

    </select>

 

 

如果返回类型为resultType时,java对象的属性应和数据库表里的各字段保持一致,这样在查出结果后mybatis会将Map里面的键值对取出赋给resultType所指定的对象对应的属性。

分享到:
评论

相关推荐

    mybatis分布查询以及resulttype和resultmap的用法

    通过以上内容,我们可以了解到MyBatis在处理分布查询时的灵活性,以及`resultType`和`resultMap`在结果映射中的重要性。对于初学者来说,理解并熟练掌握这些概念,将有助于提升MyBatis的使用效率和代码质量。在实际...

    MyBatis中关于resultType和resultMap的区别介绍

    在MyBatis中,`resultType` 和 `resultMap` 是两种不同的方式,用于处理SQL查询结果到Java对象的映射。理解它们的区别对于优化MyBatis映射文件的编写和提升代码的可维护性至关重要。 1. **resultType**: - `...

    深入理解Mybatis中的resultType和resultMap

    在MyBatis中,resultType和resultMap是两种不同的方式,用于处理SQL查询结果到Java对象的映射。这两种方式各有特点,适用于不同场景。 **一、resultType** resultType是MyBatis中最简单的结果映射方式,它直接指定...

    MyBatis中resultMap和resultType的区别详解

    MyBatis中resultMap和resultType的区别详解 MyBatis是当前最流行的持久层框架之一,它提供了强大的SQL映射能力和灵活的配置机制。在MyBatis中,我们经常会遇到resultMap和resultType这两个概念,虽然它们都用于将...

    Mybatis中的resultType和resultMap查询操作实例详解

    在MyBatis中,`resultType` 和 `resultMap` 是两种不同的结果集映射方式,它们用于将数据库查询的结果转换为Java对象。在处理查询返回的数据时,这两个概念是至关重要的。 `resultType` 是一种简单的方式,它直接...

    MyBatis的resultMap详解

    在 MyBatis 的配置文件 mybatis_config.xml 中,我们可以使用 typeAlias 来指定 Blog 对象的别名为 "Blog",然后在 select 语句中使用 resultType="Blog" 来指定查询结果的返回类型为 Blog 对象。 在查询映射时,...

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

    1. **select**:用于定义查询语句,可以设置resultType或resultMap来指定返回的结果对象。 2. **insert**:用于定义插入语句,可以获取自增主键值。 3. **update**:用于定义更新语句。 4. **delete**:用于定义删除...

    Mybatis高级-resultMap之collection聚集

    接下来,在MyBatis的映射文件中定义了`resultMap`元素,用于描述数据库结果集与Java对象之间的映射关系: ```xml &lt;!--dpsMatchPlanDetailResultVOMap列表--&gt; &lt;resultMap id="DetailResultVOMap" type=...

    MyBatis_sql-resultMap-缓存

    总的来说,`resultMap`和缓存机制是MyBatis提高开发效率和系统性能的关键要素。理解并合理运用它们,可以有效地提升你的项目开发体验和应用性能。在实际开发中,根据业务需求,灵活配置和管理`resultMap`,以及适当...

    mybatis配置文件 config与mapper

    总的来说,理解并熟练掌握MyBatis的配置文件和映射文件对于提高开发效率和代码质量至关重要。它们允许开发者以声明式的方式编写SQL,与Java对象无缝结合,极大地降低了数据访问层的复杂性。同时,MyBatis的灵活性也...

    第三章 MyBatis的核心配置.docx

    例如,新建一个db.properties配置文件,写上数据库信息,接着在Mybatis文件中配置属性,通过resource引用,最后修改数据库连接信息。 3.2.3 元素 元素用于配置MyBatis的全局参数,常用参数包括: * cacheEnabled...

    MyBatis学习-映射文件标签篇(select、resultMap).rar_alikeett_blueaod_mybatis

    本资料主要探讨的是MyBatis中的两个关键标签:`select`和`resultMap`,这两个标签在映射文件中起着至关重要的作用。 `select`标签是MyBatis用于执行SQL查询的标签,它允许我们将SQL语句嵌入到XML配置文件中。`...

    mybatis入门实例(xml)

    在 XML 文件中,我们可以定义数据源(DataSource)和事务管理器(TransactionManager),这将决定 MyBatis 如何连接数据库和处理事务。 接下来,我们需要创建一个特定的 SQL 映射文件,例如 `UserMapper.xml`。这个...

    Mybatis-03 SQL映射文件

    在MyBatis中,SQL映射文件起着至关重要的作用,它是连接数据库和Java代码的桥梁,允许开发者灵活地控制SQL语句的编写。本文将深入探讨MyBatis框架中的SQL映射文件配置,主要包括以下几个方面: 1. **基本结构** ...

    mybatis中文教程

    MyBatis的配置文件主要包括两部分:全局配置和Mapper配置。全局配置文件(mybatis-config.xml)包含了数据库连接信息、事务管理等;Mapper配置文件(如:UserMapper.xml)则定义了SQL语句和映射规则。 三、MyBatis...

    MyBatis入门到精通

    MyBatis通过`resultType`或`resultMap`属性进行配置。 9. **级联操作** MyBatis支持一对多、多对多的复杂关联映射,通过`association`和`collection`标签,可以实现级联查询和更新。 10. **缓存机制** MyBatis...

    mybatis-3-config.dtd mybatis-3-mapper.dtd

    在提供的压缩包文件`a5a737bf07ad487ea7b6eae182394e1a`中,可能包含了具体的MyBatis配置文件和映射文件示例,进一步展示了如何利用`mybatis-3-config.dtd`和`mybatis-3-mapper.dtd`来构建一个完整的MyBatis应用。...

Global site tag (gtag.js) - Google Analytics