私たちのアプリケーションにはいくつかのエンティティがあり、MySQL
データベースで開発されました。私たちのすべてのエンティティextends
は、共通の基本エンティティです。
@MappedSuperclass
public class BaseEntityData implements Serializable
{
/**
* Data identifier (Usually holds Primary Key)
*/
private Long id;
/**
* @return the id
*/
@Id
@GeneratedValue(strategy= GenerationType.AUTO)
public Long getId()
{
return id;
}
/**
* @param value the id to set
*/
public void setId(final Long value)
{
this.id = value;
}
}
すべてのエンティティが拡張され、データベースBaseEntityData
上ですべてが完全に機能しました。開発中MySQL
にテストするために国境を接しませんでした。さまざまなクライアント要件の cos でOracle database
テストしたいのですが、主キーのシリアル番号が生成されず、重複キーが生成される場合があることがわかりました。すべてのテーブルに一意のキーを生成するために、このスーパー クラスを変更するにはどうすればよいでしょうか。このスーパー クラスを拡張するエンティティは 300 以上あります。Oracle database
Oracle database
BaseEntityData