SpringBoot+JPA 使用生成的原生sql进行query查询,查询结果出现“All elements are null”问题

Jpa封装了很方便的查询机制,但是有事查询问题复杂多变,难免要用到原生sql进行查询,这时就要用到EntityManager获取Query进行查询

首先通过注解获得EntityManager的实例

然后通过它加上生成的sql语句和要获取的类型生成query,再通过query取出查询出来的List集合结果... (查询结果还可以是其它类型)

正常情况下,查询都是没问题的。但是,我对新创建的数据库表查了几条数据,发现查询不出来结果,打了断点查看取出的List集合提示“All elements are null”,但是我用生成的sql语句在数据库软件上直接查询明明没问题的。

在网上查看有的是因为字段大小写问题,有的是因为驼峰命名问题,但是我一一用了都没有效果。

我自己研究了好一会才发现,我返回的数据主键是空的,我是用的一个area在实体类标注了@Id作为主键,但是这个我做查询的时候并没有值,所以就出现了这个问题。给主键赋上值,再查询就OK了。。。

猜你喜欢

转载自blog.csdn.net/yssa1125001/article/details/88839435