我正在开发可以通过 JDBC 访问数据库的 Web 服务。我正在使用 DAO 模式。我已经实现了所有必要的方法:findAll、add、update、delete。但是我对更新方法感到困惑。它以 Object 作为输入参数。但是他怎么知道哪个字段需要更新。例如,我需要更新字段“姓名”,我使用查询 'update table set name='smth where id=2'
但如果我需要更新“姓氏”?告诉更新方法实际更新什么的最佳实践是什么?
谢谢
最佳答案
您需要更改方法签名以包含列名称和值的 Map。
public interface FooDao<K, V> {
// other methods here, of course.
public void update(V target, Map<String, Object> parameters);
}
查看 Spring JDBC 模板,了解如何设计和实现此类内容的一个很好的示例。
关于mysql - 不同字段的JDBC更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11310186/