Spring-Data-JPA 使用@Modifying修改(Modifying queries)

@Modifying去做数据更新

1、在UserDao上增加新方法

 

      /**
* 通过@Modifying结合@Query进行修改操作
*/
    @Modifying(clearAutomatically=true)
    @Transactional
    @Query("update User set name=:name, age=:age where id=:id") 

    void updateUserInfo(@Param("name") String name, @Param("age") Integer age, @Param("id") Integer id);

   注意:在使用@Modifying注解时,如果忘了加 @Transactional注解可能会报错。

 

2、在UserService上增加新方法

/**
*更新操作
*/
public void updateUserInfo(String name,Integer age,Integer id){
userDao.updateUserInfo(name, age, id);

}

       /**
* spring-data-jpa  自带更新操作
*/
public void updateUserInfo2(String name,Integer age,Integer id){
User one = userDao.getOne(id);
one.setName(name);
one.setAge(age);
userDao.saveAndFlush(one);
}

3、测试

      @Test
public void test9() {
userService.updateUserInfo("今天修改", 55, 1);
}
@Test
public void test10() {
userService.updateUserInfo2("今天修改222", 55, 1);
}

微信公众号 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值