【问题标题】:How to read uncommit data in same transaction如何在同一事务中读取未提交的数据
【发布时间】:2018-01-15 23:54:44
【问题描述】:

我有一种方法可以在其他方法 userupdate 中调用。在方法 userupdate() 中,首先我从数据库中获取用户实体,然后在数据更改其名称后。现在我尝试在 do 方法中获取相同用户 ID 的用户实体,但成功但问题是我有旧用户名没有新的更新用户名。我已经尝试过隔离级别 READ_UNCOMMITTED 。

      Transactional( isolation=Isolation.READ_UNCOMMITTED)
      public void do(){
      User user = getUser( userId );
      print(user.getName());//print old name Anuj
   }

private void userupdate( userId ){
  User user = finduserOnbaseUserId(userId);
  user.setName("updatedName");
}

请帮助我如何在 do() 中获取更新用户实体。提前致谢。

【问题讨论】:

    标签: hibernate spring-mvc jpa transactions spring-transactions


    【解决方案1】:

    我有理由为什么这不起作用,因为 spring 不能拦截同一类的方法调用,所以在这种情况下事务不适用。更新方法需要新 bean 并注入此类,然后代码成功运行我参考了这个 link

    【讨论】:

      猜你喜欢
      • 2019-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-08
      • 2018-10-02
      相关资源
      最近更新 更多