1

次のようなクラスConfigを取得しました。

public Class Config {

    public static int someIntValue = 0;
    public static String someText = "some text";

}

私が今やりたいのは、その構成を保存してロードすることです。別の構成をロードする必要がない場合は、その初期構成もあります。したがって、構成はプログラムの任意の時点で変更できます。

私が思いついたのは、シンゲルトンのようなパターンでした

public Class Config {

    public static Config instance;

    private int someIntValue = 0;
    private int String someText = "some text";

    public static Config getInstance(){
    if(instance == null)
    instance = new Config();
    return instance;
    }

    public void setInstance(Config config){
    this.instance = config;
    }
    //getter/setter
    ...

}

しかし、結局のところ、それは最善のアプローチのようには見えず、私はそれに満足していません:/多分、あなたたちはそれを行うための通常の/「ベストプラクティス」の方法で私を助けてくれます.

よろしくお願いします

4

3 に答える 3

1

java.util.Properties か、それを包むラッパーを使用するだけです。別の良いアプローチは、Java Bean と xstream のようなものを保存/ロードすることです。

于 2012-12-03T18:08:20.453 に答える
0

通常、設定用の Java ではプロパティ ファイルを使用します。次に、ResuorseBundle を使用してプロパティを読み取ります。

あなたの「シングルトン」は、従来の意味でのシングルトンではありません。1) フィールド インスタンスはプライベートにする必要があります。2) SetInstance メソッドを削除します。3) シングルトン スレッド セーフにする必要があります。

于 2012-12-03T18:16:34.520 に答える