JavaのDatatablesに苦しんでいます
-
27-09-2019 - |
質問
私はJavaで手を試している.NET開発者です。私の現在のプロジェクトには、UIレイヤー、ビジネスロジックレイヤー、およびデータアクセスレイヤーがあります。私は現在、DALに取り組んでいます。
まだ外部データベースに接続していません。 DBが設置されるまで、DALクラスにメモリ内データテーブルを利用してもらうことを望んでいました。
.NETでは、インメモリのデータテーブルを作成し、それらから選択し、それらに追加して、それらから削除するのは非常に簡単です。しかし、Javaでは、私は同じことをすることを見つけることができませんでした。
「Datatables」を強くタイプされたオブジェクトのコレクションに置き換えることを検討していました。しかし、それはDAL内のビジネス層への参照を追加する必要があります(そして、それはノーではないと思いました)。
誰かが混乱した開発者を助けることができますか?このアプローチ全体に欠陥がある場合、あなたは何をしますか? Javaのデータテーブルに相当するものを逃した場合 - それは何ですか?
解決
これが記事です インメモリダービーデータベースの実行時。
どのデータベースと使用しているPersistenceライブラリを知っていれば、より正確な答えを出すことができるかもしれません。
他のヒント
説明のようなメモリデータベースを使用できます この答え.
異なるメモリデータベースの比較が示されています これはとても質問です.
「Datatables」を強くタイプされたオブジェクトのコレクションに置き換えることを検討していました。しかし、それはDAL内のビジネス層への参照を追加する必要があります(そして、それはノーではないと思いました)。
これらのルールを構成するのは誰ですか?
データアクセスレイヤーがモデルオブジェクトのCRUD操作を担当している場合、それらを参照する必要があるように思えます。それを回避する方法はありません。
Persistence Tierは、サービスレイヤーやビューレイヤーについて知る必要はありません。
完全に非表示のクラスは、誰にも話しかけず、何も提供しないクラスです。無駄だ。
「ルール」に夢中にならないでください。アプリケーションを重ねようとしています。永続性に関するすべてのことをクラスの層に入れています。
インメモリデータベースは、Persistence Tierの設計方法に影響を与えるとは思いません。リレーショナルデータベースまたはフラットファイル、またはその他のメカニズムに交換できるはずですが、インターフェイスは変更されないはずです。それが実装の詳細です。
または/MSは、.NETよりもJavaのはるかに早い段階で利用可能でした。データセットには、手続き的にプログラムを強制するという点で欠陥があります。オブジェクトと対話し、それらを後でDBにマッピングするようにしてください。