hibernate 查询Page 只要有一个字段为null 查出来的整条数据都为null

Pageable pageable = this.getPageable(queryDto);
Page<PrpdExch> page2 = prpdExchDao.findAll(pageable);

通过postman查询结果:

{
  "resultCode": "0000",
  "resultMsg": "成功",
  "transactionID": "",
  "resultObj": {
    "content": [
      null,
      null,
      null,
      null,
      null
    ],
    "totalCount": 21,
    "pages": 5
  }
}

最后定位到:

在类上的@IdClass注解引用的是本身,也就是说又把自己所有字段当成了主键,所以里面有字段为null就导致报错。

以前:

@Entity
@Table(name = "prpdExch")
@IdClass(PrpdExch.class)
public class PrpdExch implements BaseEntity, Serializable {
...
}

更改后

@Entity
@Table(name = "prpdExch")
@IdClass(PrpdExchKey.class)
public class PrpdExch implements BaseEntity, Serializable {
...
}

马虎出错的....

参考地址:

http://blog.csdn.net/zw0283/article/details/46009187

时间: 2024-08-10 20:02:39

hibernate 查询Page 只要有一个字段为null 查出来的整条数据都为null的相关文章

Oracle 某字段值相同的取前几条数据

rank() over(partition)的使用(转载) 有的时候会遇到这样的问题,我们需要查询一张表,而且要按照业务排序,比如我需要如下的结果: 地区   日期    费用  产品编号   用户编号 290 201202 258 1              s1     290 201202 200 1              s5     290 201202 100 1              s100     290 201202 90   2              s7 

Spring data jpa模糊查询,根据某一个字段,或者多个字段进行模糊查询

这里分别列举里三种情况: 1.一个字段的模糊查询 2.一个字段模糊查询和一个字段不支持模糊查询 3.两个以上的字段支持模糊查询 刚开始,使用like发现并不起作用,后来经同事帮忙,才改成的Containing关键字:     public List<Nodes> findByIpContaining(String ip, Pageable pageable);     public List<Nodes> findByIpContainingAndStatus(String ip,

新建一个DataTable如何手动给其添加多条数据!

早晨起来,想起昨天利用winform做类似于sqlserver数据库导入数据功能的时候,用到了新建一个DataTable手动给其添加多条数据,平时用不到,需要的时候想不起来了,这次不妨把他记下来.以下是代码,很简单. //声明并实例化datatable DataTable dt = new DataTable(); //实例化三个列            DataColumn dc1 = new DataColumn("factoryName",System.Type.GetType(

Mongo查询list数组中一个字段大于特定条数

由于刚刚接触mongodb,很多语法还不是很了解,写的不好的地方请大佬指出 查询的demo数据 { "_id":Object("xxxxxxxx"), "contentList":[ "id":"xxxx", "type":2 ], [ "id":"xxxx", "type":2 ] } 查询方法,使用聚合aggregate查询

java语言利用MySQL数据库自带的DATE_SUB()函数查询一周、一个月、半年、一年之内的数据记录

在JSP页面中根据论坛帖子的发帖时间查询帖子记录,前台JSP页面代码如下: <s:form id="postTime" action="findPostByTime" method="post" theme="simple" target="mFrame"> <table class="tab_data" width="70%" > <t

SQL Server分组查询某最大值的整条数据(包含linq写法)

想实现如下效果,就是分组后时间最大的那一条数据: 1.SQL SELECT * FROM ( SELECT * , ROW_NUMBER() OVER ( PARTITION BY RIP_GUID ORDER BY RU_CreatedTime DESC ) rn FROM RIP_FlowInfo ) t WHERE t.rn <= 1; 2.LINQ var groupQuery = from t in query group t by t.RIP_Guid into g select n

通过JDBC连接mysql数据库,得到一个list,包含的是每一条数据的HashMap

http://wang153723482.blog.163.com/blog/static/11864984520129101354515/?suggestedreading&wumii

SQL On Hadoop 设计的一个基本原则是:将计算任务移动到数据所在的节点而不是反过来

3.1 数据本地化 SQL On Hadoop 设计的一个基本原则是:将计算任务移动到数据所在的节点而不是反过来.这主要出于网络优化的目的,因为数据分布在不同的节点,如果移动数据那么将会产生大量的低效的网络数据传输.数据本地化一般分为三种:节点局部性 (Node Locality), 机架局部性 (Rack Locality) 和全局局部性 (Global Locality).节点局部性是指将计算任务分配到数据所在的节点上,此时无需任何数据传输,效率最佳.机架局部性是指将计算任务移动到数据所在的

MongoDB 倾向于将数据都放在一个 Collection 下吗?

不是这样的. Collection 的单个 doc 有大小上限,现在是 16MB,这就使得你不可能把所有东西都揉到一个 collection 里.而且如果 collection 结构过于复杂,既会影响查询.更新效率,也会造成维护困难和操作风险.你有尝试过手一抖就把一个 doc 不小心存成 null 的么,反正我做过,要是一个人所有信息都在这个 collection 里面,那感觉一定相当酸爽吧. 一般的原则是: 按照查询方式来聚类 需要经常一起读取的数据放一起. 在逻辑上关系紧密的信息放在一起.