我有一个包含50列的表格,我希望将HashMap
变量中的所有项目插入其中(HashMap
键和表列名称相同)。
如果不编写50行代码,我怎么能这样做呢?
答案 0 :(得分:3)
获取HashMap的密钥集。迭代该键集以构建包含insert语句的String。使用生成的String创建PreparedStatement。然后再次迭代该键集,使用从HashMap检索的对象按名称设置参数。
如果您的任何值属于JDBC驱动程序不确定如何映射的类,则可能必须编写一些额外的特殊情况代码行。
答案 1 :(得分:1)
我建议你咬一口,然后简单地编写一个方法,为你做一些包含50行参数设置代码的脏工作。这不是那么糟糕,你只需要写一次。我希望你不是那么懒;-)
顺便说一下,表中的50列不是很多吗?也许标准化过程可以帮助降低数据库的复杂性和操作它的代码。
另一种方法是使用像Hibernate这样的ORM,或像Spring JDBC template这样更轻量级的方法。
答案 2 :(得分:1)
map.keySet()
以获取所有列的名称。map.get(key)
。