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

spring data jpa的update操作

简介

 使用jpa进行update操作主要有两种方式:

1、调用保存实体的方法

      1)保存一个实体:repository.save(T entity)

      2)保存多个实体:repository.save(Iterable<T> entities)

      3)保存并立即刷新一个实体:repository.saveAndFlush(T entity)

注:若是更改,entity中必须设置了主键字段,不然不能对应上数据库中的记录,变成新增(数据库自动生成主键)或报错(数据库不自动生成主键)了

2、@Query注解,自己写JPQL语句

    例:

   @Modifying
   @Query("update ShopCoupon sc set sc.deleted = true where sc.id in :ids")
   public void deleteByIds(@Param(value = "ids") List<String> ids);

   注:

   1)update或delete时必须使用@Modifying对方法进行注解,才能使得ORM知道现在要执行的是写操作

   2)有时候不加@Param注解参数,可能会报如下异常:

   org.springframework.dao.InvalidDataAccessApiUsageException: Name must not be null or empty!; nested exception i                is Java.lang.IllegalArgumentException: Name must not be null or empty! 

 

转载于:https://www.cnblogs.com/520playboy/p/7365571.html

相关文章:

  • 详解java定时任务
  • day7回顾
  • Get和Post的参数传值
  • Linux查看占用GPU的进程
  • C++ 类型声明
  • 信息系统项目管理师----成本类计算
  • 【JavaScript】JavaScript赋值语句中的逻辑与和逻辑或||
  • NS3网络仿真(10): 解析以太网帧
  • Redis API 必杀解读:引入RedisTemplate
  • 第十五 jQuery
  • 设置防火墙使mysql可以远程连接的方法
  • 【转】mysql explain执行计划详解
  • iOS平台设置系统状态栏(通知栏、顶部状态栏)样式背景颜色或透明
  • AngularJs工具方法
  • 线上 python http server profile 实践
  • [分享]iOS开发-关于在xcode中引用文件夹右边出现问号的解决办法
  • AWS实战 - 利用IAM对S3做访问控制
  • bearychat的java client
  • css选择器
  • dva中组件的懒加载
  • Eureka 2.0 开源流产,真的对你影响很大吗?
  • gcc介绍及安装
  • Git学习与使用心得(1)—— 初始化
  • Joomla 2.x, 3.x useful code cheatsheet
  • Lucene解析 - 基本概念
  • Quartz初级教程
  • Spring Boot快速入门(一):Hello Spring Boot
  • SQLServer之创建显式事务
  • Vultr 教程目录
  • web标准化(下)
  • 持续集成与持续部署宝典Part 2:创建持续集成流水线
  • 从 Android Sample ApiDemos 中学习 android.animation API 的用法
  • 高程读书笔记 第六章 面向对象程序设计
  • 规范化安全开发 KOA 手脚架
  • 看域名解析域名安全对SEO的影响
  • 快速构建spring-cloud+sleuth+rabbit+ zipkin+es+kibana+grafana日志跟踪平台
  • 理解IaaS, PaaS, SaaS等云模型 (Cloud Models)
  • 融云开发漫谈:你是否了解Go语言并发编程的第一要义?
  • 使用Tinker来调试Laravel应用程序的数据以及使用Tinker一些总结
  • 小程序button引导用户授权
  • #快捷键# 大学四年我常用的软件快捷键大全,教你成为电脑高手!!
  • #每天一道面试题# 什么是MySQL的回表查询
  • #我与Java虚拟机的故事#连载09:面试大厂逃不过的JVM
  • $var=htmlencode(“‘);alert(‘2“); 的个人理解
  • (1)Nginx简介和安装教程
  • (2)(2.4) TerraRanger Tower/Tower EVO(360度)
  • (3)选择元素——(17)练习(Exercises)
  • (ibm)Java 语言的 XPath API
  • (LeetCode 49)Anagrams
  • (ros//EnvironmentVariables)ros环境变量
  • (二十一)devops持续集成开发——使用jenkins的Docker Pipeline插件完成docker项目的pipeline流水线发布
  • (仿QQ聊天消息列表加载)wp7 listbox 列表项逐一加载的一种实现方式,以及加入渐显动画...
  • (深度全面解析)ChatGPT的重大更新给创业者带来了哪些红利机会
  • (四)图像的%2线性拉伸
  • (一)Thymeleaf用法——Thymeleaf简介