【问题标题】:findById is not fetching Audit Columns (createdBy and createdDate) after save/update保存/更新后 findById 未获取审核列(createdBy 和 createdDate)
【发布时间】:2021-11-23 18:07:53
【问题描述】:

由于我们实施了实体审计,我们也能够使用 AuditorAware 存储 CreatedBy 以及 @lastmodifiedby。但这里的问题是,一旦我们再次更新记录,我们将尝试使用findbyId 获取更新的记录,但它给出@createdby@createddate 为空,@lastmoidified 日期也是 DB @987654329 中的一个不同示例@但在回复2021-10-02T12:30:29.596038100Z

即使我从下面列出的网络中获得了一些解决方案

  1. SaveAndFlush - 这会干扰@transactional 模型,因此我们不能使用它,

示例代码:

@GetMapping(value = "/saveandshow")
public Object GetsavedValue(@RequestParam("name") String name,@RequestParam("id") Long id ) {
    //List<Account> list =  accRepo.findAll();
    Account acc_find = accRepo.getOne(Long.valueOf(id));
    Account account = new Account();
    account.setId(acc_find.getId());
    account.setAccountname(name);
    //account.setAge(name);
    Account acc = accRepo.save(account);
    Optional<Account> fetchAccount = accRepo.findById(acc.getId());
    System.out.println("Accont "+fetchAccount); 
    return "Success";       
}

我做错了什么吗..?

参考:https://github.com/vivekjava/Audit/blob/main/src/main/java/com/vivek/rest/AccountResource.java#L37

请提供您的想法或意见,非常感谢。

【问题讨论】:

标签: spring-boot auditing


【解决方案1】:

必须尝试在存储库级别进行 saveAndFlush 而不是保存?

这里有更多解释:https://www.baeldung.com/spring-data-jpa-save-saveandflush

【讨论】:

  • 虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接答案可能会失效。 - From Review
猜你喜欢
  • 1970-01-01
  • 2020-05-29
  • 2019-06-15
  • 1970-01-01
  • 2018-01-26
  • 1970-01-01
  • 2013-04-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多