SpringBoot框架下的SQL查詢空值結果時返回Map型別欄位為空
今天在執行業務的時候發現在一次查詢時, 查詢出當一個欄位值為null時,封裝成Map型別返回的物件則不存在該值
如:
<select id="getUserDetail" parameterType="java.util.Map" resultType="java.util.Map">
SELECT
USER_ID AS userId,
MOBILE AS mobile,
NAME AS name
FROM BC_USER_T
WHERE USER_ID = #{_map.userId}
</select>
根據條件查詢時, 如果該條資料的MOBILE列為NULL, 則返回的Map物件裡不會有"mobile",這個key, 返回給前端則為undefined而不是null.使得前端報錯.
而這樣子的情況,只要在Application.properties配置檔案裡.加入mybatis.configuration.call-setters-on-nulls=true就可以了。主要意義就是配置SQL就算列是null也會進行set操作。
相關推薦
SpringBoot框架下的SQL查詢空值結果時返回Map型別欄位為空
今天在執行業務的時候發現在一次查詢時, 查詢出當一個欄位值為null時,封裝成Map型別返回的物件則不存在該值如:<select id="getUserDetail" parameterType="java.util.Map" resultType="java.util
SQL 如何查詢text,ntext型別欄位為空不為null ?
我們知道,在sql語句中,如果查詢某個文字欄位值為空的,可以用select * from 表 where 欄位='' ,但是如果這個欄位資料型別是text或者ntext,那上面的sql語句就要出錯了。 下面是個人總結的幾種常用方法: 1. select * from 表 w
oracle中使用sql查詢時欄位為空則賦值預設
oracle 通過 nvl( )函式sql 查詢時為 空值 賦預設值 oracle 函式介紹之nvl 函式宣告:nvl(col,val) 說明:當col為空時取val作為返回值,當col不為空時取col值。 用處:最主要的是格式化資料,比如計算金額時,不想出現
sql 處理資料欄位為空 如果為空轉換成別的值
判斷欄位是否為空,如果為空轉成你要的字元 1.oracle : nvl(“欄位名”,’轉換後的值’);//欄位名是雙引號,轉換後的值是單引號 2.sql Server: isnull(“欄位名”
mysql查詢欄位為空字串時給預設值 (2、為null時給一預設值)
1、 case when post_ask_pay.price='' then 10 else post_ask_pay.price end as priceSELECT distinct post_ask_pay.user_id as ask_user_id,post_
SQL server 查詢某個值在哪張表哪個欄位?
declare @str varchar(100) set @str='test' --要搜尋的字串 declare @s varchar(8000) declare tb cursor local for select s='if exists(select 1 fro
SpringBoot JPA 分頁升序的時候,怎麼把排序欄位為空的記錄排在最下面
Sort.Order order = new Sort.Order(direction, column).nullsFirst(); 上面這種寫法不能實現升序的時候將排序欄位為空的記錄排在最後面,百度找了很久,只找到兩篇相關的回答,但是都沒解決問題,請問哪位大神知道怎麼解決這個問題? &
spring boot整合mybatis查詢資料庫返回Map欄位為空不返回解決
1.出現問題原因 原因1:mybatis的配置即mapper返回對映配置。 原因2:jackson的配置即@ResponseBody序列化配置。 2.解決方式 步驟1:解決原因1 mybatis:configuration: call-setters
postgresql將欄位為空的值替換為指定值
null 表示缺失的值, '' " "表示空值 null 參與的表示式運算都返回null 使用is null 判斷是null is not null 判斷非null nullif(value1, value2) 如果value1 == value2 返回null c
mysql刪除欄位為空的資料 mysql中空值與NULL的區別
空值與NULL的區別 我們先來理解mysql中空值與NULL的區別是什麼吧 一些剛剛接觸MySQL的孩子,經常會錯誤的認為NULL與空字串’ ’是相同的。這看似是一件不重要的事情,但是在MySQL中,這兩者是完全不同的。NULL是指沒有值,而”則表示值是存在的,
【Python】Scrapy ItemLoader 處理空列表讓資料庫欄位為空值
問題描述 我需要爬取某些招聘網頁上的資訊,但不是所有招聘網頁中展示的資訊都一樣,例如有些網頁上並沒有附上公司網址,而如果沒有需要在資料庫相應的欄位中賦值為空。 方法一:不使用itemLoader 使用extract_first()取得列表第一個元素,預設值為‘’
PostgreSQL 將欄位為空的值替換為指定值
null 表示缺失的值, ""表示空值 null 參與的表示式運算都返回null 使用is null 判斷是null is not null 判斷非null nullif(value1, value2) 如果value1 == value2 返回null co
iOS NSUserDefaults setObject forKey,本地化儲存,刪除字典中的null,空值,本地化的時候,如果value為空值所引起的崩潰
刪除字典中的null 我們在處理伺服器傳過來的資料過程中,如果資料中出現null,我們是沒法進行本地持久化處理的。在使用NSUserDaults儲存本地時,如果其中一個欄位的value為NULL值,就會出現崩潰。 null產生原因 null是後臺在處理資料的時候,如
關於hql中部分關聯欄位為空時,不報錯而直接查不出欄位為空的記錄
select b.listNo,b.appGNo,b.trGno,b.complex,b.commName,b.commSpec,b.tradeUnit,b.tradeQty,b.unit,b.qty,b.note, c.listNo,c
Oracle 欄位為空處理 NVL()函式, NVL2()函式
--1. NVL()函式: --格式:NVL(E1,E2) --說明:若E1為NULL,則函式返回E2,否則返回E1本身。 Select NVL(FQty,0) as qty From T_Sal_Order --如果FQty的值為null,則返回 0 Select NVL(FQty,FAssist
關於hibernate方式獲取記錄的時候欄位為空就獲取空記錄的解決方法
在oracle資料庫下,如果是使用hibernate查詢資料的時候,特別是使用view的物件查詢資料的時候,有些欄位為空的時候就會出現整條記錄都獲取不到的情況,這是因為在生成xml檔案和pojo(bean)檔案的時候,因為view沒有主鍵的說法,所以會生成一個pojo類和一
MongoDB 查詢時返回指定的欄位
對像我一樣的新手來說,想要只查詢某(幾個)欄位,一些教程說的不是很詳細。 首先我們看一下mongoDB 查詢時用的find方法: db.collection.find(query, projec
mysql:int型別欄位儲存空資料時請用null
jsp頁面傳到java後臺為空值,此時賦值給該欄位null,如下: entity.setTextureId(StringUtils.isEmpty(textureId[i])?null:textur
hibernate不允許欄位為空配置
由於業務需求,需要改欄位的約束條件,允許欄位為空,找相關的DBA改了之後,使用hibernate儲存“物件”,卻一直插入不進去,找了很久,原來是配置檔案中多了一個配置資訊 <property name="aaaa" column="AAAA" type="com.hb.AAAA" updat
SpringBoot框架下基於Junit的單元測試
項目 bject 必須 -s rsquo ember dde 用戶名 針對 前言 Junit是一個Java語言的單元測試框架,被開發者用於實施對應用程序的單元測試,加快程序編制速度,同時提高編碼的質量。是一個在發展,現在已經到junit5,在javaEE開發中與很多框架相