zoukankan      html  css  js  c++  java
  • 使用JPA中@Query 注解实现update 操作

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

    1、调用保存实体的方法

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

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

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

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

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

    使用JPA中@Query 注解实现update 操作,代码如下:
    @Transactional
    @Modifying(clearAutomatically = true)
     @Query(value = "update StockOut sc set sc.receivedPersonId=?1,sc.receivedPerson=?2,sc.receivedDate=?3 where stockOutCode=?4")
     int receipt(Long uid,  String uname, Date createDate, String soCode);
    备注:
    1.更新StockOut表下一些字段, 这里使用了不是原生的sql语句,所以不要加nativeQuery = true
    2.@Transactional 注解用于提交事务,若没有带上这句,会报事务异常提示。
    3.@Modifying(clearAutomatically = true) 自动清除实体里保存的数据。
  • 相关阅读:
    VM player无法联网问题
    寄存器
    linux下的文件操作
    linux的切换目录操作
    linux的ls -al指令
    python对ASC码的加减
    ASC码速记
    pyhton的返回值
    intellij 调试方法
    2015,5.10
  • 原文地址:https://www.cnblogs.com/smiler/p/7452739.html
Copyright © 2011-2022 走看看