0

3 つの異なるデータベース インスタンスを保持する静的な GlobalVariables クラスがあります。

private static GlobalVarsDatabase dBOne = null;
private static GlobalVarsDatabase dBTwo = null;
private static GlobalVarsDatabase dBThree = null;

public class GlobalVars {

public static GlobalVarsDatabase getdBOne() {
    return dBOne;
}


public static void setdBOne(GlobalVarsDatabase dBOne) {
    GlobalVars.dBOne= dBOne;
}}

などなど

次に、DOM を使用して XML ファイルからデータを読み取り、保存先の 3 つのオブジェクトを作成します。

(デバッグモードでこれらのオブジェクト内の値を既に確認しており、正しく読み取られています)

次に、作成したインスタンスを各データベースに設定します。

GlobalVariables.setDBOne(dbOne); 

などなど

私の GlobalVarsDatabase クラスには、そのように定義されたゲッターとセッターのみが含まれています。

public static String getMinConnections() {
    return minConnections;
}

public static void setMinConnections(int minConnections) {
    GlobalVarsDatabase.minConnections= minConnections;
}

DOM 解析を介してセッターに変数を割り当てます。

データベース オブジェクトの作成。

 GlobalVarsDatabase dBOne= new GlobalVarsDatabase();

次に、このオブジェクトを使用して最小接続を設定します。

 dBOne.setMinConnectionsPerPartition(Integer.parseInt(dbPoolElement.getElementsByTagName("ConPoolminConnections").item(0).getTextContent()));

そして、このオブジェクトを GlobalVars に渡します。

GlobalVariables.setDbOne(dBOne); 

しかし、必要な特定の値を参照すると、常に同じ情報が得られます。

そう:

GlobalVariables.getDbOne().getMinConnections();
GlobalVariables.getDbTwo().getMinConnections();
GlobalVariables.getDbThree().getMinConnections();

個々のオブジェクトごとに異なる情報が保存されていても、すべて同じ情報を取得します。

静的クラスは、同じ情報が利用可能な他のクラスから参照される可能性がありますが、これがどこで間違っている可能性があるかについてのアイデアはありますか?

私の質問を改善するためのフィードバックをありがとう、本当に役に立ちました:)

4

0 に答える 0