現在、DAOレイヤーでは、addDevice、deleteDevice、searchDevice、ifAlreadyRegistered .....などの各タイプのデータベースクエリのメソッドを作成しており、DAOレイヤーオブジェクトが非常に重くなります。
DAOレイヤーがそれほど重くならないように、DAOに汎用のinsertメソッド、deleteメソッド、updateメソッドを持たせる方法はありませんか?
現在、DAOレイヤーでは、addDevice、deleteDevice、searchDevice、ifAlreadyRegistered .....などの各タイプのデータベースクエリのメソッドを作成しており、DAOレイヤーオブジェクトが非常に重くなります。
DAOレイヤーがそれほど重くならないように、DAOに汎用のinsertメソッド、deleteメソッド、updateメソッドを持たせる方法はありませんか?
データベースとのインターフェースにHibernateのような ORM を使用していますか? そうでない場合は、ORM を試してみてください。SQLではなく「ネイティブ」プログラミング言語(あなたの場合はJavaなど)でロジックを表現し、ORMがSQLを計算するため、データベースの操作がはるかに簡単になります。たとえば、Hibernate では、オブジェクトの更新は次のようになります (この記事から)。
transaction = session.beginTransaction();
Course course = (Course) session.get(Course.class, courseId);
course.setCourseName(courseName);
transaction.commit();
...生のSQLの代わりに。ORM の使用が理にかなっている場合 (すべての場合ではありません)、コードをよりクリーンで簡単なものにすることができます。
大雑把に言えば、ORMが意味を成すプログラムの良い例は、CRM のようなもので、オブジェクトをプッシュして簡単なレポートを作成するだけです。ORMがおそらく意味をなさないプログラムの良い例は、高度にカスタマイズされ、慎重に最適化された SQL クエリを使用する分析ツールのようなものです。 .