0

アプリの構成設定を持つ単一の構成 Bean があります。この Bean をアプリケーション内の任意の Java クラスに公開したいと考えています。Bean を必要とするすべてのクラスに自動配線しますか、それともグローバル クラスの静的フィールドに設定して、すべてのクラスから便利にアクセスできるようにしますか? 自動配線は、回転率の高いオブジェクトに対して合理的/推奨されていますか? 私の場合、これは毎秒複数回発生するネットワーク イベントです。

4

1 に答える 1

0

私はこのアプローチを AspectJ コンパイル時 (またはロード時) ウィービングで使用しました。

public final class Config {

    public static String oneParticularSetting() {
        return new ConfigHolder().oneParticularSetting;
    }

    @Configurable
    private static class ConfigHolder {
        @Value("${oneParticularSetting}")
        private String oneParticularSetting;
    }
}

自動配線のオーバーヘッド/パフォーマンスは、テストする必要があるものです。

または、ConfigHolder インスタンスを再利用することもできます (スレッド セーフを考慮してください)。

于 2013-05-29T20:18:42.933 に答える