天天看點

SpringBoot+JPA 使用生成的原生sql進行query查詢,查詢結果出現“All elements are null”問題

Jpa封裝了很友善的查詢機制,但是有事查詢問題複雜多變,難免要用到原生sql進行查詢,這時就要用到EntityManager擷取Query進行查詢

首先通過注解獲得EntityManager的執行個體

SpringBoot+JPA 使用生成的原生sql進行query查詢,查詢結果出現“All elements are null”問題

然後通過它加上生成的sql語句和要擷取的類型生成query,再通過query取出查詢出來的List集合結果... (查詢結果還可以是其它類型)

SpringBoot+JPA 使用生成的原生sql進行query查詢,查詢結果出現“All elements are null”問題

正常情況下,查詢都是沒問題的。但是,我對新建立的資料庫表查了幾條資料,發現查詢不出來結果,打了斷點檢視取出的List集合提示“All elements are null”,但是我用生成的sql語句在資料庫軟體上直接查詢明明沒問題的。

在網上檢視有的是因為字段大小寫問題,有的是因為駝峰命名問題,但是我一一用了都沒有效果。

我自己研究了好一會才發現,我傳回的資料主鍵是空的,我是用的一個area在實體類标注了@Id作為主鍵,但是這個我做查詢的時候并沒有值,是以就出現了這個問題。給主鍵賦上值,再查詢就OK了。。。