1

JDBCを介してデータベースにアクセスできるWebサービスを開発しています。DAOパターンを使用しています。必要なすべてのメソッドを実装しました:findAll、add、update、delete。しかし、私は更新方法と混同しました。入力パラメータとしてオブジェクトがあります。しかし、彼はどのフィールドを更新する必要があるかをどうやって知るのでしょうか。たとえば、フィールド'name'を更新する必要がありますが、クエリを使用します'update table set name='smth where id=2'が、'surname'を更新する必要がある場合は?? 更新メソッドに実際に何を更新するかを指示するためのベストプラクティスは何ですか?
ありがとうございました

4

1 に答える 1

1

メソッド シグネチャを変更して、列名と値のマップを含める必要があります。

public interface FooDao<K, V> {
    // other methods here, of course.
    public void update(V target, Map<String, Object> parameters); 
}

そのようなものを設計および実装する方法の良い例については、Spring JDBC テンプレートをご覧ください。

于 2012-07-03T11:45:38.600 に答える