JPA 如何修改 联表查询返回的Map

记录解决两个问题:

1、JPA 中联表查询会返回一个不可修改的集合Map 如果要修改就会报 :A TupleBackedMap cannot be modified.

解决方法:

不直接修改这个 Map。如果你需要对 Map 进行修改操作,你可以创建一个新的 Map,然后将原 Map 的内容复制到新 Map 中。

 第二个问题就是如何创建一个空的Page<Map> 把数据拷贝进去了

2、如何创建一个空 Page<Map> 对象 

参数描述:   

	// Pageable pageRequest = PageRequest.of(当前页码, 每页条数 );
	Pageable pageRequest = PageRequest.of(recordDto.getPage(), recordDto.getPageSize() );
		
		  
	// Page<Map> pm = new PageImpl<>(对象列表, pageRequest , 总条数);
	Page<Map> pm = new PageImpl<>(newList, pageRequest ,  findRecordList.getTotalElements());

创建新对象并赋值伪代码如下:

Pageable pageRequest = PageRequest.of(recordDto.getPage(), recordDto.getPageSize() );
	
Page<Map> findRecordList = recordRepository.findRecordList(recordDto.getName(), recordDto.getDateStart(), recordDto.getDateEnd(), pageRequest) ;
		  
	List<Map> newList =new ArrayList<Map>();
	
	List<Map> list = findRecordList.getContent();
	for (Map map : list) {
		  Map  newMap1 = new HashMap(map);
		  //添加新的属性
		  newMap1.put("flag", 1);
	
	}
	 Page<Map> pm = new PageImpl<>(newList, pageRequest , findRecordList.getTotalElements());

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/575756.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

docker-MySQL 8 主从搭建

一.目录结构&#xff1a; 我是在/home目录下&#xff0c;建立个sql文件夹&#xff1a; 二、配置文件 1.mysql配置 mysql-master下.conf文件配置 ###### [mysqld] server-id1 # 启用二进制日志 log-binmaster-bin # 指定需要复制的数据库 binlog-do-dbtest_db # 指定二进制日…

为什么工业锅炉必须要清洗?-智渍洁

锅炉经过长时间运行&#xff0c;不可避免的出现了水垢、锈蚀问题&#xff0c;锅炉形成水垢的主要原因是给水中带有硬度成分&#xff0c;经过高温、高压的不断蒸发浓缩以后&#xff0c;在炉内发生一系列的物理、化学反应&#xff0c;最终在受热面上形成坚硬、致密的水垢。 水垢是…

【EMQX】使用websocket订阅EMQX数据

需求&#xff1a;某平台希望通过 websocket 来订阅 EMQX平台上的某些 Topic数据进行处理 1、EMQX 服务配置 前提是EMQX服务正常安装运行了&#xff0c;如果EMQX服务未安装的话&#xff0c;详见以下文章关于如何安装部署服务&#xff1a; 搭建自己的MQTT服务器、实现设备上云(W…

windows11编译3dslicer_问题总结

编译前准备 CMake&#xff1a;版本>3.16.3&#xff08;避免使用3.21.0&#xff0c;3.25.0-3.25.2&#xff0c;这些版本&#xff0c;可能会出现build错误&#xff09;。Git&#xff1a;版本>1.7.10&#xff0c;安装完git&#xff0c;一定要在cmd里面试一试&#xff0c;是…

网络安全之弱口令与命令爆破(上篇)(技术进阶)

目录 一&#xff0c;什么是弱口令&#xff1f; 二&#xff0c;为什么会产生弱口令呢&#xff1f; 三&#xff0c;字典的生成 四&#xff0c;使用Burpsuite工具弱口令爆破 总结 一&#xff0c;什么是弱口令&#xff1f; 弱口令就是容易被人们所能猜到的密码呗&#xff0c;…

docker部署前端项目(二)遇到的问题

1、docker版本号 只有1.13.1 因为使用 sudo yum install docker &#xff08;下载到的是旧版&#xff09; 解决&#xff1a;下载新版 报错一&#xff1a; unable to prepare context: unable to evaluate symlinks in Dockerfile path: Lstat /root/Proiects/dist/Dockerfil…

如何在PostgreSQL中创建并使用窗口函数来进行复杂的分析查询?

文章目录 解决方案1. 了解窗口函数的基本概念2. 常用的窗口函数3. 使用示例示例 1&#xff1a;计算每行销售数据的累计销售额示例 2&#xff1a;计算每行销售数据相对于前一行销售额的增长率 结论 PostgreSQL 提供了一套强大的窗口函数&#xff08;Window Functions&#xff09…

NumPy简单学习(需要结合书本)

NumPy简单学习&#xff08;需要结合书本&#xff1a;Python数据分析与应用&#xff09; 文章目录 NumPy简单学习&#xff08;需要结合书本&#xff1a;Python数据分析与应用&#xff09;前言导库&#xff1a; 一、大概内容1.掌握NumPy数组对象ndarray&#xff08;1&#xff09;…

水电气能耗管理云平台

安科瑞薛瑶瑶18701709087/17343930412 能耗管理云平台采用泛在物联、云计算、大数据、移动通讯、智能传感器等技术手段可为用户提供能源数据采集、统计分析、能效分析、用能预警、设备管理等服务&#xff0c;平台可以广泛应用于多种领域。

武汉星起航:践行“走出去”,一站式孵化助推跨境电商飞跃发展

在全球经济一体化和互联网技术飞速发展的背景下&#xff0c;跨境电商行业已成为连接国内外市场的重要桥梁。作为行业内的佼佼者&#xff0c;武汉星起航凭借多年自营店铺运营经验的积淀和跨境电商资源的深度整合&#xff0c;公司成功打造出一站式卖家孵化模式&#xff0c;为众多…

DC-DC电源芯片规格书上的各种参数详解

1.输出电压精确度 输出电压的精确度,也被称为设定点精度,它描述了输出电压的允许误差。该参数通常是在常温,满载和额定输入电压的条件下测得的,它是这样定义的: 输出电压之所以产生误差,是因为元器件本身存在误差,特别是输出端的分压电阻,它将输出电压降低后比PWM比较…

Windows 10 使用 Vagrant 快速创建虚拟机

一、下载 Vagrant 官网地址&#xff1a;Oracle VM VirtualBox 阿里云盘&#xff1a;阿里云盘分享 二、安装 Vagrant 安装软件前请先确认 CPU 是否开启了虚拟化&#xff0c;要求开启 2.1、双击运行可执行文件后点击下一步 2.2、选择安装路径&#xff0c;为了避免中文乱码产生的…

【CSS】grid 布局一行自动填充,每行最大限定px

<div class"model-plat-content"><div class"mode-card" v-for"i in 30"></div></div>.model-plat-content {display: grid;// 解释&#xff1a; repeat(auto-fit, minmax(250px, 1fr)) 自动填充&#xff0c;每行最大25…

Python:解析pyserial串口通讯

简介&#xff1a;串行接口简称串口&#xff0c;也称串行通信接口或串行通讯接口&#xff08;通常指COM接口&#xff09;&#xff0c;是采用串行通信方式的扩展接口。串行接口 &#xff08;Serial Interface&#xff09;是指数据一位一位地顺序传送。其特点是通信线路简单&#…

【插件】IDEA 热部署插件 JRebel

1 搜索安装插件 JRebel 2 选中Team URL 1、在上面的框中输入激活的url地址 https://jrebel.qekang.com/{GUID} http://jrebel-license.jiweichengzhu.com/{GUID} GUID生成工具 Create GUID online (guidgen.com) 备用 404 Not Found (ofmonkey.com) 如果上述激活地址不能…

Python请求示例电商商品详情数据(API接口开发系列),从入门到实战

在电商系统中&#xff0c;商品详情数据通常通过API接口提供。以下是一个从入门到实战的Python请求示例&#xff0c;展示如何获取电商商品详情数据。 入门篇&#xff1a;理解API接口 首先&#xff0c;你需要了解API&#xff08;应用程序接口&#xff09;的基本概念。API允许不…

Flutter应用下拉菜单设计DropdownButtonFormField控件介绍

文章目录 DropdownButtonFormField介绍使用方法重点代码说明属性解释 注意事项 DropdownButtonFormField介绍 Flutter 中的 DropdownButtonFormField 是一个用于在表单中选择下拉菜单的控件。它是 DropdownButton 和 TextFormField 的组合&#xff0c;允许用户从一组选项中选择…

全域外卖城市合伙人怎么样啊?一文解答

全域外卖城市合伙人&#xff0c;也叫做全域外卖服务商&#xff0c;这一职业在当今数字化时代愈发显得重要。它与传统团购外卖服务商的区别&#xff0c;就如同广袤的星空与单一的星星。全域外卖服务商&#xff0c;顾名思义&#xff0c;就是能够涉足所有外卖领域的服务商。这些领…

Python数据爬取超简单入门

## 什么是网络爬虫&#xff1f; 网络爬虫是一种自动浏览器程序&#xff0c;能够自动地从互联网获取数据。爬虫的主要任务是访问网页&#xff0c;分析网页内容&#xff0c;然后提取所需的信息。爬虫广泛应用于数据收集、数据分析、网页内容监控等领域。 ## 爬虫的基本步骤 1.…

前端开发攻略---用原生JS在网页中也能实现文本转语音

1、原理 语音合成 (也被称作是文本转为语音&#xff0c;英语简写是 tts) 包括接收 app 中需要语音合成的文本&#xff0c;再在设备麦克风播放出来这两个过程。 Web API中对此有一个主要控制接口 SpeechSynthesis&#xff0c;外加一些处理如何表示要被合成的文本 (也被称为 utte…