java - 跨数据类型重构相似代码

标签 java generics refactoring

我在 Java 中工作,将某些类型的 HashMap 中的数据插入到 SQL 数据库中。它产生了一些这样的代码:

for ( String key : strings.keySet() ) {
    result_set.updateString(key, strings.get(key));
}

for ( String key : booleans.keySet() ) {
    result_set.updateBoolean(key, booleans.get(key));
}

for ( String key : dates.keySet() ) {
    result_set.updateDate(key, dates.get(key));
}

我习惯了 Ruby,像这样的代码会占用一行,我不敢相信我必须在 Java 中这样做。我一定是错的。有没有更好的办法?我假设使用泛型?我尝试使用 result_set.updateObject(key, object) 但它给了我“SQLException:无法在 java.util.Date 和 VARCHAR 之间转换。”

最佳答案

看看MyBatis ,一个 SQL 映射器,处理 POJO(包括映射和列表)和 SQL 之间的映射。相对于我们自己在原始 JDBC 中完成所有工作,它为我们节省了大量工作。

关于java - 跨数据类型重构相似代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3963704/

相关文章:

java - 如何扩展Eclipse的重命名重构完成后触发另一个重构

java - 如何在类路径中包含 hbase-site.xml

java - Java 中的重置按钮

asp.net-mvc - ASP.NET MVC - 为什么我的 View 不能从 System.Web.Mvc.ViewPage(of T) 正确继承

java - 为什么可以对 TableColumn<T, S> 中的两种泛型类型使用相同的泛型类型?

javascript - 使用箭头函数重构嵌套函数

Java:我的 Prim 看起来怎么样?

java - 从 fragment 更新 UI

java - 如何引用接口(interface)在 Java 中实现的类类型?

java - 在java中, "public static void main"可以重命名或重构吗?