網(wǎng)站首頁(yè) 編程語(yǔ)言 正文
<resultMap type="TbActivity" id="TbActivityResult">
<result property="id" column="id" />
<result property="name" column="name" />
<result property="channel" column="channel" />
<result property="info" column="info" />
<result property="type" column="type" />
<result property="discount" column="discount" />
<result property="vouchers" column="vouchers" />
<result property="status" column="status" />
<result property="createTime" column="create_time" />
<result property="beginTime" column="begin_time" />
<result property="endTime" column="end_time" />
<result property="code" column="code" />
</resultMap>
<resultMap>
是 MyBatis 框架中的一個(gè)標(biāo)簽,用于定義查詢結(jié)果映射的規(guī)則,將數(shù)據(jù)庫(kù)查詢結(jié)果映射到 Java 對(duì)象的屬性上。
1.<resultMap type="TbActivity" id="TbActivityResult">
定義了一個(gè)名為 "TbActivityResult" 的結(jié)果映射。具體作用如下:
-
type="TbActivity"
?指定了映射的目標(biāo)類型為 TbActivity,即將查詢結(jié)果映射到 TbActivity 類型的對(duì)象上。 -
id="TbActivityResult"
?指定了該結(jié)果映射的唯一標(biāo)識(shí)符為 "TbActivityResult",以便在后續(xù)的查詢語(yǔ)句中引用。
2.?<result>
標(biāo)簽用于定義每個(gè)列與屬性之間的映射關(guān)系。例如,<result property="id" column="id" />
表示將查詢結(jié)果中的 "id" 列的值映射到 TbActivity 對(duì)象的 id 屬性上。
具體的映射規(guī)則如下:
-
<result property="屬性名" column="列名" />
?表示將查詢結(jié)果中的指定列的值映射到指定屬性上。其中,"屬性名" 是 TbActivity 對(duì)象的屬性名,"列名" 是數(shù)據(jù)庫(kù)表中的列名。
通過(guò)這樣的結(jié)果映射規(guī)則,MyBatis 可以根據(jù)查詢結(jié)果中的列名和屬性名進(jìn)行匹配,并將對(duì)應(yīng)的值賦給對(duì)象的屬性。這樣,我們可以方便地將查詢結(jié)果轉(zhuǎn)化為 Java 對(duì)象,并進(jìn)行后續(xù)的操作和處理。
<insert id="insertTbActivity" parameterType="TbActivity" useGeneratedKeys="true" keyProperty="id">
insert into tb_activity
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="name != null">name,</if>
<if test="channel != null">channel,</if>
<if test="info != null and info != ''">info,</if>
<if test="type != null">type,</if>
<if test="discount != null">discount,</if>
<if test="vouchers != null">vouchers,</if>
<if test="status != null">status,</if>
<if test="createTime != null">create_time,</if>
<if test="beginTime != null">begin_time,</if>
<if test="endTime != null">end_time,</if>
<if test="code != null">code,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="name != null">#{name},</if>
<if test="channel != null">#{channel},</if>
<if test="info != null and info != ''">#{info},</if>
<if test="type != null">#{type},</if>
<if test="discount != null">#{discount},</if>
<if test="vouchers != null">#{vouchers},</if>
<if test="status != null">#{status},</if>
<if test="createTime != null">#{createTime},</if>
<if test="beginTime != null">#{beginTime},</if>
<if test="endTime != null">#{endTime},</if>
<if test="code != null">#{code},</if>
</trim>
</insert>
1.<trim prefix="(" suffix=")" suffixOverrides=",">
是 MyBatis 框架中的一個(gè)標(biāo)簽,用于修整 SQL 語(yǔ)句中的前綴、后綴和后綴覆蓋。
2.<trim>
標(biāo)簽被用于修整 INSERT 語(yǔ)句中列名部分的括號(hào)。具體作用如下:
-
prefix="("
?指定了插入語(yǔ)句中列名部分的前綴為 "(",即在列名部分的最前面加上一個(gè)左括號(hào) "("。 -
suffix=")"
?指定了插入語(yǔ)句中列名部分的后綴為 ")",即在列名部分的最后面加上一個(gè)右括號(hào) ")"。 -
suffixOverrides=","
?指定了如果列名部分最后一個(gè)字符是逗號(hào) ",",則將逗號(hào)刪除。這樣可以確保在最后一個(gè)列名之后不會(huì)出現(xiàn)多余的逗號(hào)。
例如,假設(shè) TbActivity 對(duì)象中有三個(gè)非空屬性,對(duì)應(yīng)的列名分別是 "name"、"channel" 和 "info",那么經(jīng)過(guò) <trim prefix="("
suffix=")" suffixOverrides=",">` 的修整后,列名部分的結(jié)果將是 "(name, channel, info)"。其中,列名之間用逗號(hào)分隔,并被包裹在左右括號(hào)中。
原文鏈接:https://blog.csdn.net/A2029292473/article/details/134653421
- 上一篇:沒(méi)有了
- 下一篇:沒(méi)有了
相關(guān)推薦
- 2023-06-18 Python實(shí)現(xiàn)將內(nèi)容轉(zhuǎn)為base64編碼與解碼_python
- 2023-04-01 Android自定義View事件分發(fā)流程詳解_Android
- 2023-05-14 Python中數(shù)字(Number)數(shù)據(jù)類型常用操作_python
- 2022-08-11 golang?對(duì)象深拷貝的常見(jiàn)方式及性能_Golang
- 2022-09-20 redis的string類型及bitmap介紹_Redis
- 2022-06-18 C++?詳細(xì)講解對(duì)象的構(gòu)造順序_C 語(yǔ)言
- 2022-12-12 C++?Boost?Chrono實(shí)現(xiàn)計(jì)時(shí)碼表流程詳解_C 語(yǔ)言
- 2023-07-10 Python使用MongoDB數(shù)據(jù)庫(kù)
- 欄目分類
-
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲(chǔ)小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過(guò)濾器
- Spring Security概述快速入門(mén)
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯(cuò)誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實(shí)現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡(jiǎn)單動(dòng)態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對(duì)象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊(duì)列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支