-3

純粋な Java/JDBC で DAO レイヤーを実装する方法に関するチュートリアル/ベスト プラクティスの例を探しています。

ほとんどの DAO は Data Mapper パターンに基づいていますか?

Active Record パターンも使用されていますか?

どのようにしますか?

4

3 に答える 3

4

DAO に必要なのは、インターフェースと実装だけです。インターフェイスは操作を定義し、実装は実装を提供します。

DAO を特別なものにしているのは、インターフェイスと実装の目的が特にデータ アクセスであることです。アプリケーションがデータ アクセスを処理する方法は、DAO の抽象化の背後に隠されています。

いくつかの jdbc コードをオンラインで見たとしましょう。そのコードをdaoで使用したい。

Statement st = conn.createStatement();
st.executeUpdate("INSERT INTO sometable " +
                   "VALUES (...)");

だからインターフェースを作る

interface ThingDao {
   public void save(Thing thing);
}

そしてあなたの実装

public ThingDaoImpl implements ThingDao {

    ThingDaoImpl() {
        // do setup around connections
    }

    public void save(Thing thing) {
        // put the jdbc code here
    }

}

ここで、生活を楽にして、Spring の JdbcTemplate のようなものを使用したいとしましょう。DAO パターンは変更されません。唯一の変更点は、実装では、テンプレートを使用して操作を実行することです。インターフェイスを変更していないため、Dao を使用するコードを変更する必要がないことを意味するため、これは重要です。これがDAO の抽象化のポイントです。

于 2013-03-26T15:54:05.923 に答える
2

痛みのない JDBC が必要な場合は、私のお気に入りのソリューションです... Spring JDBC テンプレートのドキュメント

それでもSpringについて学ぶ必要があります

于 2013-03-26T15:57:21.987 に答える