網站首頁 編程語言 正文
<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 框架中的一個標簽,用于定義查詢結果映射的規則,將數據庫查詢結果映射到 Java 對象的屬性上。
1.<resultMap type="TbActivity" id="TbActivityResult">
定義了一個名為 "TbActivityResult" 的結果映射。具體作用如下:
-
type="TbActivity"
?指定了映射的目標類型為 TbActivity,即將查詢結果映射到 TbActivity 類型的對象上。 -
id="TbActivityResult"
?指定了該結果映射的唯一標識符為 "TbActivityResult",以便在后續的查詢語句中引用。
2.?<result>
標簽用于定義每個列與屬性之間的映射關系。例如,<result property="id" column="id" />
表示將查詢結果中的 "id" 列的值映射到 TbActivity 對象的 id 屬性上。
具體的映射規則如下:
-
<result property="屬性名" column="列名" />
?表示將查詢結果中的指定列的值映射到指定屬性上。其中,"屬性名" 是 TbActivity 對象的屬性名,"列名" 是數據庫表中的列名。
通過這樣的結果映射規則,MyBatis 可以根據查詢結果中的列名和屬性名進行匹配,并將對應的值賦給對象的屬性。這樣,我們可以方便地將查詢結果轉化為 Java 對象,并進行后續的操作和處理。
<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 框架中的一個標簽,用于修整 SQL 語句中的前綴、后綴和后綴覆蓋。
2.<trim>
標簽被用于修整 INSERT 語句中列名部分的括號。具體作用如下:
-
prefix="("
?指定了插入語句中列名部分的前綴為 "(",即在列名部分的最前面加上一個左括號 "("。 -
suffix=")"
?指定了插入語句中列名部分的后綴為 ")",即在列名部分的最后面加上一個右括號 ")"。 -
suffixOverrides=","
?指定了如果列名部分最后一個字符是逗號 ",",則將逗號刪除。這樣可以確保在最后一個列名之后不會出現多余的逗號。
例如,假設 TbActivity 對象中有三個非空屬性,對應的列名分別是 "name"、"channel" 和 "info",那么經過 <trim prefix="("
suffix=")" suffixOverrides=",">` 的修整后,列名部分的結果將是 "(name, channel, info)"。其中,列名之間用逗號分隔,并被包裹在左右括號中。
原文鏈接:https://blog.csdn.net/A2029292473/article/details/134653421
- 上一篇:沒有了
- 下一篇:沒有了
相關推薦
- 2022-05-10 淺談patch,以及里面的diff算法
- 2022-07-18 linux引導和計劃任務
- 2022-07-04 python如何輸入根號_python
- 2023-02-12 Golang反射模塊reflect使用方式示例詳解_Golang
- 2022-08-08 基于Redis緩存數據常見的三種問題及解決_Redis
- 2022-02-12 OWASP列舉的Web應用程序十大安全漏洞 - SQL注入
- 2022-10-03 React實現監聽粘貼事件并獲取粘貼板中的截圖_React
- 2024-07-14 springboot通過CompletableFuture開啟多線程執行任務
- 欄目分類
-
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支