0

私たちのアプリケーションにはいくつかのエンティティがあり、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 databaseOracle databaseBaseEntityData

4

1 に答える 1