首页 > 其他分享 >自定义ResultMap中的id 和result的区别

自定义ResultMap中的id 和result的区别

时间:2024-07-12 19:18:58浏览次数:11  
标签:JDBC 自定义 映射 ResultMap result id 属性

<resultMap id = "CashInvoiceMap" type="com.dfire.soa.invoice.bo.Invoice">
    <id column="id" property="id" />
    <result column="order_id" property="orderId" />
    <result column="customer_register_id" property="customerRegisterId" />
    <result column="entity_id" property="entityId" />
    <result column="invoice_kind" property="invoiceKind" />

</resultMap>

在自定义的resultMap中第一列通常是主键id,那么id 和result有什么区别呢?

id和result都是映射单列值到一个属性或字段的简单数据类型。

唯一不同是。id是作为唯一标识的,当和其他对象实例对比的时候,这个id很有用,尤其是应用到缓存和内嵌的结果映射。

property: 映射数据库列的字段或属性,如果JavaBean的属性与给定的名称匹配,就会使用匹配的名字,否则MyBatis将搜索给定名称的字段,两种情况下你都可以使用逗点的属性形式,比如,你可以映射到“”username:,也可以映射到“address.street.number”

column:数据库的列名或者列标签别名,与传递个resultSet.getString(columnName)的参数名称相同。

javaType:完整Java类名或者别名,如果映射到一个JavaBean,那么MyBatis通常会自行监测到。然而如果映射到一个HashMap,那应该明确指定javaType来确保所需行为。

jdbcType;支持的jdbc类型,这个属性只在insert,update,delete的时候针对允许空的列有用,JDBC需要这项,但Mybatis不需要,如果直接编写JDBC代码,在允许为空值的情况下需要指定这个类型。

标签:JDBC,自定义,映射,ResultMap,result,id,属性
From: https://www.cnblogs.com/joe-tang/p/7144947.html

相关文章

  • resultMap之collection聚集
     聚集元素用来处理“一对多”的关系。需要指定映射的Java实体类的属性,属性的javaType(一般为ArrayList);列表中对象的类型ofType(Java实体类);对应的数据库表的列名称;不同情况需要告诉MyBatis如何加载一个聚集。MyBatis可以用两种方式加载:1.select:执行一个其它映射的SQL语句返回......
  • MyBatis用嵌套ResultMap实现一对多映射
    背景我们知道,MyBatis可以很方便地把SQLselect出来的数据直接映射为对象的属性,把对象取出来。但是,有些对象的属性是集合类型,集合里保存的是数个其他类型的对象。如何用MyBatis把它取出来呢?例子以以下这个应用场景为例:一个教师对应多个课程。数据结构如下:publicclassCour......
  • keycloak~使用自定义的注册页
    添加FormAction的实现packageorg.keycloak.phone.authentication.forms;importorg.keycloak.Config;importorg.keycloak.authentication.FormAction;importorg.keycloak.authentication.FormActionFactory;importorg.keycloak.authentication.FormContext;importorg.......
  • 自定义类型:结构体
     一、结构体的声明结构体是一些值的集合,这些值称为成员变量。结构的每个成语可以是不同的类型的变量。1.1结构体变量的创建和初始化结构体的初始化为分为按照结构体成员的顺序初始化和按照指定的顺序初始化1.2结构体的特殊声明在声明结构体的时候,可以不完全的声明如......
  • linux-Rsyslog自定义配置json模板
    配置日志接收模板和转发参考:https://www.cnblogs.com/xwupiaomiao/p/17565418.html自定义模板配置文件在主配置文件中添加(rsyslog.conf)include(file=“/etc/rsyslog.d/*.conf”mode=“optional”)方案一在/etc/rsyslog.d/下创建一个配置文件ct3a1.conf#日志模板......
  • rsyslog配置(服务端、客户端)-UDP-TCP转发-imfile自定义应用程序的日志推送
    ##概念#Syslog服务器可以用作一个网络中的日志监控中心,所有能够通过网络来发送日志的设施(包含了Linux或Windows服务器,路由器,交换机以及其他主机)都可以把日志发送给它。通过设置一个syslog服务器,可以将不同设施/主机发送的日志,过滤和合并到一个独立的位置,这样使得你更容易地查......
  • 【日常记录-Java】自定义进程池
    Author:赵志乾Date:2024-07-12Declaration:AllRightReserved!!!1.简介    服务器上有些进程需要池化管理,使用SpringBoot构建Web服务提供管理api,内部使用自定义的进程池维护已启动的进程;    核心点: 进程池管理的进程都会使用系统的一个端口对外提供服务; ......
  • 演示:【Avalonia-Controls】Avalonia皮肤,主题,自定义控件,数据库,系统模块资源库
    一、目的:分享一个Avalonia皮肤,主题,自定义控件,数据库,系统模块资源库开源地址:GitHub-HeBianGu/Avalonia-Controls:Avalonia控件库Nuget包地址:NuGetGallery|PackagesmatchingHeBianGu.AvaloniaUI.演示视频地址:【Avalonia-Controls】Avalonia工具组件皮肤库v1.0.0_......
  • 最新AI一站式系统源码-ChatGPT商业版系统源码,支持自定义AI智能体应用、AI绘画、AI视频
     一、前言人工智能语言模型和AI绘画在多个领域都有广泛的应用.....SparkAi创作系统是一款基于ChatGPT和Midjourney开发的智能问答和绘画系统,提供一站式AIB/C端解决方案,涵盖AI大模型提问、AI绘画、AI视频、文档分析、图像识别和理解、TTS&语音识别、AI换脸等多项功能。......
  • 多线程中自定义线程池与shiro导致的权限错乱问题解决
    importorg.apache.shiro.SecurityUtils;importorg.apache.shiro.subject.Subject;importorg.apache.shiro.util.ThreadContext;importjava.util.concurrent.*;publicclassShiroAwareThreadPoolExecutorextendsThreadPoolExecutor{publicShiroAwareThread......