2011-02-25 19 views
3

私はJava EE JBossサービスを開発しています。これは、SQL Serverをデータベースとして使用する環境と、 Oracle 10gを使用します。JPAエンティティのSQL ServerとOracle(自動インクリメント列の問題)の互換性

データベースのスキーマは非常に似ていますが、主キー列はSQL ServerでID自動増分され、Oracleでシーケンスを使用して生成されます。

JPAでは、両方のDBに1組のエンティティを使用できますか?

ありがとうございます!

答えて

4

もちろん、注釈ではなくXMLフィールドのPKフィールドの生成値定義を指定することもできます。 2つの異なるorm.xmlファイルを使用します。たとえばorm-oracle.xmlを参照するOracleの場合は「persistenceUnitOracle」、orm-sqlserver.xmlを参照するSQLServerの場合は「persistenceUnitSqlServer」を使用します。

+0

面白い概念です。生成された値の定義をXMLに入れ、残りのメタデータを注釈として保存しますか? –

+0

はい。異なる環境でデプロイするために再コンパイルする必要がないように、デプロイメント固有の情報をXMLで保存する(値生成、列/テーブル名など) – DataNucleus

関連する問題