0

次のエンティティがあります。

 @Entity 
 public class User {

 @Id
 @GeneratedValue
 private Integer id;
 private String name;
 private String uberField;
 }

私の意図は、uberField にランダムな数字 (0 ~ 9) を含め、それを文字「-」とエンティティ ID に連結することです。例えば:

ID:233 のユーザーは uberField == "6-223" を受け取ります

問題は、新しいエンティティを作成するたびに、これが機能しないため、2 回保存する必要があることです。

User newUser = new User();
newUser.setUberField(genUber(user));  // not working!!! no id yet
save(newUser);  // not working!!! no id yet

これはうまくいきます:

User newUser = new User();
save(newUser);  // Save 1st
newUser.setUberField(genUber(user));
save(newUser); // save 2nd time

この冗長なセーブを克服できますか?

4

1 に答える 1