問題タブ [spring-data-jdbc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 手動 PK (自動生成されない) を使用して、Spring データ JDBC CrudRepository で Oracle に挿入します。
Spring Data JDBC v1.0.4 (JPA ではない) を使用して Oracle DB に挿入すると、次のエラーが発生します。
デフォルトの実装では常に自動生成されたキーが想定されているようですが、テーブルの主キーは文字列です。
永続化するエンティティ:
リポジトリ:
リポジトリへの呼び出し:
insert
のメソッドの最後の行で例外がスローされorg.springframework.data.jdbc.core.DefaultDataAccessStrategy
ます。
問題は、KeyHolder インターフェイスにgetKey
Number を返すメソッドがあり、Oracle が生成された KEY として ROWID を返すことです...ただし、エンティティ PK は生成されず、挿入前に ID が設定されます。
そのコードの何が問題なのか理解できません。どんな助けでも大歓迎です。