私は大規模なリファクタリングプロジェクトの途中です。コードには5000行のメインクラスがあり、すべてのものに注入され、すべてが保存され、すべての共通コードがあります。Javaアプリケーションデータの保存とアクセスに最適なアプローチ
私は分析とデザインの専門家ではありませんが、私は自分の能力を最大限に引き出しています。メインクラスに依存するクラスをリファクタリングして約80%作成されました。
アプリケーションの開始時に初期化され、アプリケーションの使用期間を通じてほとんどすべてによってアクセスされるいくつかのタイプのデータがあります。たとえば、何百ものパラメータを保持するConfigクラスがあります。
私が取ったアプローチは、いくつかのシングルトンを作成することです。最も重要な2つはGUIDataとClientDataです。 GUIDataにはアプリケーションのメインフレームへの参照が含まれ、clientdataにはconfigや他の同様のクラスへの参照が保持されます。
これにより、コード内のどこからでもClientData.getInstance()。getConfig()。getParam( "param")を呼び出すことができますが、これが最善のアプローチであるとは思われません。
私はクラスのインスタンスを含むこれらのデータシングルトンの代わりに個々の静的クラスを考えましたが、クラスの中にはコンストラクタが必要です。
私は、上のグーグルでてきたし、オフの週のためにこれを行うには良い方法を見つけるしようとしているが、何とか私は常にデータベース・キャッシングの話スレッドで終わる
方法について['java.util.Properties'](http://www.mkyong.com/java/java-properties-file-examples/)を使用していますか? –
データはプロパティに格納され、起動時に読み込まれますが、いくつかのスレッドがあり、多くの便利なメソッドとクライアントデータを介してアクセスされる約10種類のクラスを解析するための膨大なものがあります。もしそれがまだ良いユースケースだと思うなら、例を挙げて答えてみてください。それを試してみます – SMC
注射フレームワークを使いたいと思うように聞こえます。これらのBeanをアプリケーションクラスに挿入します。これにより、ClientData.getInstance()。getConfig()。getParam( "param")の代わりにプロパティを直接注入することもできます。@Inject @Named( "param")String param;あなたはそのフィールドで利用できるデータを持っています。 – pandaadb