![](/img/trans.png)
[英]How to check if an entity exists in DB using methods from SimpleJpaRepository
[英]SimpleJpaRepository does not modify persisted entity
當我使用SimpleJpaRepository#save()
持久存儲實體時,它將不會對其進行修改。 例如,它將不會設置實體的新ID。
除此之外,一切正常。 該實體將被保留並賦予ID。 如果我從數據庫中讀取它,則可以看到ID。 這是正常行為嗎? 我知道#save方法會返回持久實體,但我希望它可以修改給定實體。 有沒有配置的方法?
謝謝
-編輯
假設這是我的工作:
User user = new User();
// do something with user
userRepository.save(user);
然后user
保持不變。 該對象已寫入數據庫,但用戶未被管理。 另外saveAndFlush(user)
不會導致不同的行為。 我能做的是user = userRepository.save(user)
。 在這種情況下,用戶成為托管實例。 但是從Hibernate中,我習慣於僅保存對象,並且提交的對象成為托管對象。 是否可以使用JPA存檔?
請檢查實體中的@Id
配置。 請確保您已在Id
屬性上正確定義@GeneratedValue
。 該屬性在區分insert
操作和update
操作方面起着關鍵作用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.