当前位置: 首页 > news >正文

JPA常见异常 JPA可能抛出的异常

1、EntityNotFoundException(实体不存在异常): 通过 JPA 查找一个不存在的实体。

2、NonUniqueResultException非唯一结果异常): 查询返回了多个结果,但期望只有一个结果。

3、TransactionRequiredException (需要事务支持的异常)

表示在执行一个需要在事务中进行的操作时,但当前没有活动的事务。这通常发生在没有事务管理的环境中,或者在执行需要事务的操作时没有启动事务。

具体案例:

一个简单的服务类,执行了需要在事务中进行的数据库更新操作。

4、Spring Data Jpa抛出异常:NonUniqueObjectException

框架使用的SpringBoot,首先谈论一下Jpa、Spring Data Jpa、Hibernate三者的关系:

  • JPA的是 Java Persistence API 的简写,是Sun官方提出的一种ORM规范,注意不是ORM框架——因为JPA并未提供ORM实现,它只是制订了一些规范,提供了一些编程的API接口,但具体实现则由服务厂商来提供实现。
  • Hibernate是JPA规范的完整实现。并已获得Sun的兼容认证。
  • Spring Data JPA是Spring官方在JPA规范的基础下,只提供了Repository层的实现。

        因此,SpringBoot中的ORM框架也是有Hibernate的。这个异常就是Hibernate抛出的。

熟悉Hibernate的应该会知道它的缓存

        如果用户试图将同一个Java类的两个不同实例与一个特定标识符(在一个Session范围内)关联,就会发生这种情况。将抛出NonUniqueObjectException异常,其实也就是出现主键不唯一的意思。

        所以要在主键id上添加注解@GeneratedValue(strategy = GenerationType.IDENTITY),就是告诉它这个主键会由数据库自动生成。因此在缓存中会给每个实例添加一个标识,用以区分所有的实例,在提交给数据库后并不会对主键id产生影响。

相关文章:

JPA常见异常 JPA可能抛出的异常

1、EntityNotFoundException(实体不存在异常): 通过 JPA 查找一个不存在的实体。 2、NonUniqueResultException(非唯一结果异常): 查询返回了多个结果,但期望只有一个结果。 3、TransactionRequiredExcep…...

Dockerfile的艺术:构建高效容器镜像的指令详解与实战指南

在容器化技术风靡全球的今天,Dockerfile作为构建 Docker 镜像的蓝图,其编写技巧与理解深度直接影响着应用部署的效率与稳定性。本文将深入剖析Dockerfile中的核心指令,以实战角度为您呈现一份详尽的解读与操作指南,并在文末抛出一…...

软件开发项目管理中各角色职责介绍

项目经理:项目经理在项目全生命周期中扮演着核心统筹与协调者的角色,负责从项目的启动、规划、执行、监控直至收尾的全过程管理。具体职责包括但不限于以下几点: 制定项目计划:依据项目业务主客户需求,明确项目范围、时…...

将时间转换为 `刚刚`、`几秒前`、`几分钟前`、`几小时前`、`几天前`、几月前或按照传入格式显示

const formatPast (date, type "default", zeroFillFlag true) > {// 定义countTime变量,用于存储计算后的数据let countTime;// 获取当前时间戳let time new Date().getTime();// 转换传入参数为时间戳let afferentTime new Date(date).getTime(…...

Oracle存储过程干货(二):PLSQL控制语句

注:本文的数据都来源于,oracle自带的emp表。 —if then elsif end if,单条件判断— declarev_grade char(1); beginv_grade : B;if v_grade A thendbms_output.put_line(哥真牛逼);elsedbms_output.put_line(哥还得加油);end if; end; /—if then els…...

深入Gradle:初识构建自动化的魅力

在软件开发的世界中,构建工具是不可或缺的一部分。它们帮助我们自动化编译、测试和打包应用程序的过程,从而节省时间并减少错误。在众多构建工具中,Gradle以其灵活性、可扩展性和卓越的性能而脱颖而出。本篇文章将带你走进Gradle的世界&#…...

cpp版ros2、opencv转换

ros2转opencv #include <opencv2/opencv.hpp> #include <cv_bridge/cv_bridge.h> #include <sensor_msgs/image_encodings.hpp> ​ subscriber_ this->create_subscription<sensor_msgs::msg::Image>( "img", 10, std::bind(&Subs…...

使用API接口竞品价格监控

步骤一&#xff1a;确定监控目标和KPIs 目标&#xff1a;明确您希望通过监控竞品价格来实现的目标&#xff0c;例如保持价格竞争力、检测价格波动等。KPIs&#xff1a;设定关键绩效指标&#xff0c;如价格变动幅度、价格调整频率等。 步骤二&#xff1a;选择数据源和API 电商…...

Redis的BitMap的使用

简介 Redis的Bitmap不是一个独立的数据结构类型&#xff0c;而是基于字符串&#xff08;String&#xff09;类型实现的一种功能 &#xff0c;存储的是二进制的文件&#xff0c;布隆过滤器就是基于BitMap实现的。 语句的使用 新增操作 setbit key offset value offset的首位…...

视频号带货究竟怎么做?老阳分享的项目怎么样?

在当今社会&#xff0c;随着互联网的快速发展&#xff0c;社交媒体已经成为人们日常生活中不可或缺的一部分。在这个背景下&#xff0c;视频号带货作为一种新兴的电商模式&#xff0c;逐渐崭露头角。许多人都想通过加入视频号带货行业来实现自己的财富自由。其中&#xff0c;老…...

AI智能分析网关V4智慧环保/智慧垃圾站视频智能分析与监控方案

一、背景介绍 随着城市化进程的加速&#xff0c;垃圾处理问题日益受到人们的关注&#xff0c;传统的垃圾站管理方式已经无法满足现代社会的需求。针对当前垃圾站的监管需求&#xff0c;TSINGSEE青犀可基于旗下视频智能检测AI智能分析网关V4与安防监控视频综合管理系统EasyCVR平…...

vxe-table编辑单元格动态插槽slot的使用

业务场景&#xff1a;表格中只有特定某一行的的单元格可以编辑&#xff0c;列很多&#xff0c;为每个列写个插槽要写很多重复代码&#xff0c;所以这里使用动态插槽&#xff0c;简化代码量。显示编辑图标&#xff0c;点击编辑图标隐藏。失去焦点保存调后台接口。 解决办法&…...

2024新鲜出炉阿里巴巴面试真题,如果不想35岁被淘汰这篇文章必看

最近看到群里看到一个女生&#xff0c;讲述了她从开始选择Android&#xff0c;经过非常努力的学习和挣扎&#xff0c;然而最后面对当前的环境却不得不放弃。看完以后真的非常替她感觉惋惜&#xff0c;如果早几年入行可能结果会比现在好很多&#xff0c;但可惜&#xff0c;这就是…...

设计模式(含7大原则)面试题

目录 主要参考文章 设计模式的目的 设计模式的七大原则 设计模式的三大分类及关键点 1、创建型模式&#xff08;用于解耦对象的实例化过程&#xff09; 2、结构型模式 3、行为型模式 23种设计模式&#xff08;乱序--现学现写&#xff0c;不全面--应付面试为主&#xff…...

claude3科普

Claude 3 是一系列由 Anthropic 推出的新一代 语言模型&#xff08;LLMs&#xff09;。Anthropic 是一家人工智能初创公司&#xff0c;其背后的投资者包括亚马逊等&#xff0c;总投资额达到 40亿美元12。 这一系列模型分为三个不同级别的能力&#xff0c;分别是&#xff1a; …...

2024中国·北京预制菜产业博览会

2024中国北京预制菜产业博览会 时间&#xff1a;2024年5月25-27日 地点&#xff1a;北京中国国际展览中心 主办单位&#xff1a;北京鸿利展览服务有限公司 承办单位&#xff1a;北京预制菜博览会组委会 北京鸿利展览服务有限公司 预制菜产业“一头连着餐桌&#xff0c;一头…...

【Vue】vue3 在图片上渲染 OCR 识别后的文本框、可复制文本组件

需求 后面返回解析后的文本和四角坐标&#xff0c;在图片上渲染成框&#xff0c;并且可复制。图片还可以缩放、拖拽 实现 这里要重点讲下关于OCR文本框的处理&#xff1a; 因为一些文字可能是斜着放的&#xff0c;所有我们要特殊处理&#xff0c;根据三角函数来计算出它的偏…...

Linux系统运维脚本:批量创建linux用户和密码(读取文件中的账号和密码来批量创建用户)

目 录 一、要求 二、解决方案 &#xff08;一&#xff09;解决思路 &#xff08;二&#xff09;方案 三、脚本程序实现 &#xff08;一&#xff09;脚本代码和解释 1、脚本代码 2、代码解释 &#xff08;二&#xff09;脚本验证 1、脚本编辑 2、给予执行权…...

重力坝廊道量水堰计与堰板安装技术指南

在水利工程中&#xff0c;重力坝廊道量水堰计的安装是确保水资源有效监测与管理的关键环节。本文将详细阐述量水堰计及量水堰板的安装方法&#xff0c;以确保安装质量&#xff0c;提高水资源利用效率。 一、量水堰计的安装位置 量水堰计应安装在堰板的上游&#xff0c;距离堰板…...

ButterKnife实现之Android注解处理器使用教程

ButterKnife实现之Android注解处理器使用教程 1、新建一个注解 1.1、编译时注解 创建注解所需的元注解Retention包含3个不同的值&#xff0c;RetentionPolicy.SOURCE、RetentionPolicy.CLASS、RetentionPolicy.RUNTIME。这3个值代表注解不同的保留策略。 使用RetentionPolic…...

【哈希】Leetcode 128. 最长连续序列 【中等】

最长连续序列 给定一个未排序的整数数组 nums &#xff0c;找出数字连续的最长序列&#xff08;不要求序列元素在原数组中连续&#xff09;的长度。请你设计并实现时间复杂度为 O(n) 的算法解决此问题。示例 1&#xff1a;输入&#xff1a;nums [100,4,200,1,3,2]输出&#x…...

回溯是怎么回事(算法村第十八关青铜挑战)

组合 77. 组合 - 力扣&#xff08;LeetCode&#xff09; 给定两个整数 n 和 k&#xff0c;返回范围 [1, n] 中所有可能的 k 个数的组合。 你可以按 任何顺序 返回答案。 示例 1&#xff1a; 输入&#xff1a;n 4, k 2 输出&#xff1a; [[2,4],[3,4],[2,3],[1,2],[1,3],…...

向爬虫而生---Redis 探究篇5<Redis集群刨根问底(1)>

前言: Redis集群是一种可靠和高性能的分布式数据库解决方案。随着互联网的迅速发展和数据规模的增长,传统的单机Redis已经无法满足大规模应用的需求。Redis集群的出现填补了这一空白,提供了更高的可扩展性和容错性。 大家都知道,Redis是一种基于内存的高性能键值存储数据库,…...

系统集成Prometheus+Grafana

根据产品需求在自己的系统中添加一个系统监控的页面&#xff0c;其中有主机信息的显示&#xff0c;也有一些业务信息的显示。调研后的方案是 主机信息通过Prometheus采集和存储&#xff0c;业务信息通过自己系统的调度任务统计后存储在Mysql中&#xff0c;使用Grafana对接Prome…...

实例驱动计算机网络

文章目录 计算机网络的层次结构应用层DNSHTTP协议HTTP请求响应过程 运输层TCP协议TCP协议面向连接实现TCP的三次握手连接TCP的四次挥手断开连接 TCP协议可靠性实现TCP的流量控制TCP的拥塞控制TCP的重传机制 UDP协议 网际层IP协议&#xff08;主机与主机&#xff09;IP地址的分类…...

Unity 报错:SSL CA certificate error

使用UnityWebRequest时出现如下报错&#xff1a; SSL CA certificate error Curl error 60: Cert verify failed: UNITYTLS_X509VERIFY_FLAG_USER_ERROR1 原因&#xff1a; 证书验证失败 和 SSL CA证书错误 解决方法&#xff1a; 创建一个如下的类&#xff1a; /// <…...

算法刷题Day1 | 704.二分查找、27.移除元素

目录 0 引言1 二分查找1.1 我的解题1.2 修改后1.3 总结 2 移除元素2.1 暴力求解2.2 双指针法&#xff08;快慢指针&#xff09; &#x1f64b;‍♂️ 作者&#xff1a;海码007&#x1f4dc; 专栏&#xff1a;算法专栏&#x1f4a5; 标题&#xff1a;代码随想录算法训练营第一天…...

大数据技术学习笔记(五)—— MapReduce(2)

目录 1 MapReduce 的数据流1.1 数据流走向1.2 InputFormat 数据输入1.2.1 FileInputFormat 切片源码、机制1.2.2 TextInputFormat 读数据源码、机制1.2.3 CombineTextInputFormat 切片机制 1.3 OutputFormat 数据输出1.3.1 OutputFormat 实现类1.3.2 自定义 OutputFormat 2 Map…...

北斗导航 | 同步双星故障的BDS/GPS接收机自主完好性监测算法

===================================================== github:https://github.com/MichaelBeechan CSDN:https://blog.csdn.net/u011344545 ===================================================== 同步双星故障的BDS/GPS接收机自主完好性监测算法 1 引言2 同步双星故障…...

2024金三银四必看前端面试题!简答版精品!

文章目录 导文面试题 导文 2024金三银四必看前端面试题&#xff01;2w字精品&#xff01;简答版 金三银四黄金期来了 想要跳槽的小伙伴快来看啊 面试题 基于您给出的方向&#xff0c;我将为您生成20个面试题和答案。请注意&#xff0c;由于面试题的答案可能因个人经验和理解而…...