User
ドメインモデルの1つのフィールドを更新したいと思います。ドメインモデルのインスタンス全体を処理したくありません。Spring JPAリポジトリのすべてのフィールドのサブセットのみを更新するには?
更新データはUserEncryptionData
ドメインモデルクラスで表されます。 BaseEntity
(親クラス)は、User
エンティティの主キーを保持しているため、JPAには更新を処理するために必要なすべての情報(IMHO)があります。 UserRepository
で
@Entity
@Table(name = "users")
public class UserEncryptionData extends BaseEntity {
@Column(nullable = false, name = "salt", unique = true)
@JsonProperty("salt")
private String salt;
public String getSalt() {
return salt;
}
public void setSalt(String salt) {
this.salt = salt;
}
}
私はこれらのデータを更新したいと思います:
public interface UserRepository extends BaseRepository<User, UUID> {
User update(UserEncryptionData encryptionData);
// the rest omitted...
}
が、春は文句: org.springframework.data.mapping.PropertyReferenceException:によって引き起こさ
をなし タイプUserのプロパティ更新が見つかりました!
ドメインモデルフィールドのサブセットのみを更新することは可能ですか、それともUser
エンティティ全体を処理する必要がありますか?