0

アカウントエンティティのセキュリティの質問で、SecurityQuestionテーブルのセキュリティの質問の1つを「参照」し、新しい質問を作成しないようにします。次のようにします。

@Entity
public class Account {

    @Id
    @GeneratedValue...
    private Long id;
    @ManyToOne(cascade=CascadeType.ALL)
    private SecurityQuestion question;
    ...
}

@Entity
public class SecurityQuestion {

    @Id
    @GeneratedValue...
    private Long id;
    private String question;
    ...
}

Springのform:selectを使用してアカウントのセキュリティの質問を選択すると、アカウントエンティティを保存するときに新しいセキュリティの質問が作成されます。注:SecurityQuestionテーブルは、表示する定義済みの質問のリストです。

<form:select path="securityQuestion.question">
    <form:option value="" label="Select..."/>
    <form:options items="${questions}" />
</form:select>

これはどのように達成できますか?

4

1 に答える 1

0

私はそれがCascadeType.ALL設定され、あなたがどこかを失うidためだと思います(つまり、新しいエンティティSecurityQuestionを作成するために休止状態になります)。CascadeType.PERSIST

于 2013-03-04T20:03:23.027 に答える