誰かが助けてくれることを本当に願っています!
Spring/Hibernate Web ベースのアプリケーション (Tomcat 6x) を使用して、Oracle データベースにレコードを挿入することに成功しました。レコードを書き込んでいる Oracle データベース テーブルは非常に単純ですが、テーブルの最初の列には、専用の Oracle シーケンスによって提供される値を入力する必要があることを知っておくことが重要です。
私が抱えている問題は、行を挿入するときに、常に Oracle シーケンスの値を取得していないように見えることです。
この問題を自分で解決するために私が行った手順を示すコードを次に示します。
@Entity
@Table(name="MARTINI_STORE.STY_ORDER_RETRY_PAYMENT")
public class STYOrderRetryPayment implements Serializable {
/**
* Serializable class - generated UID
*/
private static final long serialVersionUID = 4396053457149921483L;
@Id
@GeneratedValue(generator="audit_seq")
@GenericGenerator( name = "audit_seq", strategy = "sequence", parameters = { @Parameter(name = "sequence", value = "MARTINI_STORE.STY_SOR_ID_SEQUENCE") }
)
@Column(name="SOR_ID", nullable=false)
private long sorId;
上記のコードは、データをテーブルに永続化するために使用する Bean のスニペットを示しています。フィールド、sorId は、データベース テーブルの列にマップされ、専用の Oracle シーケンスによって提供される値が入力されます。
この問題に対する答えを探してみましたが、何もうまくいかないようです...