1

すべての取得可能なオブジェクトで共通の構文に従う REST API を使用する必要があります。

baseUrl + domainObjectName + 修飾子

例: " http://myweb.com/api/ " + "都市" + "/{id}"

データ層の BaseDao を作成しました。各ドメイン オブジェクト (baseUrl + domainObjectName) のベース URL を DAO インスタンス化で設定したいと考えています。問題は、プロパティ ファイルで API ベースの URL を定義しており (そのままにしておきたい)、DAO コンストラクターで使用できないことです。

これは私が持っているものです:

public abstract class BaseDao {

    protected static final String ID_QUALIFIER = "/{id}";
    protected String domainObjectName = "";
    protected String doBaseUrl = "";

    @Value("#{config['baseUrlRest']}")
    public String apiBaseUrl;

    public GenericDaoRestImpl(String domainObjectName) {
        this.domainObjectName = domainObjectName;
        this.doBaseUrl = apiBaseUrl + domainObjectName;
    }

}

私のdaoがインスタンス化されたとき、apiBaseUrlはまだnullですが、作成後は実際にbaseUrlプロパティを注入しています。

プロパティを静的定数として注入するなど、これを回避する方法はありますか?

4

1 に答える 1