java - Java:如何以更优雅的方式为preparedStatment插入多个值?
问题描述
下面是我的 scala 代码,一个对 Postgres 的插入查询,它被传递给PreparedStatement
val query =
s"""
|insert into structure_products (
|identifier, "assetClass", "name", "scoreType",
|"field_1", "field_2", "field_3", "field_4",
|"field_5", "field_6", "field_7", "field_8",
|"field_9", "field_10", "field_11", "field_12")
|values (
|?, ?, ?, ?,
|?, ?, ?, ?,
|?, ?, ?, ?,
|?, ?, ?, ?)
|""".stripMargin
然后我必须为 16 个字段进行手动设置。
val statement = connection.prepareStatement(query)
statement.setString(1, identifier)
statement.setString(2, assetClass)
statement.setString(3, name)
...
statement.setTimestamp(15, field_11)
statement.setTimestamp(16, field_12)
那么有没有其他方法可以以更优雅的方式做到这一点?非常感谢!
解决方案
您可以查看Anorm,不是 ORM,而是 Play 发起的简单 Scala JDBC 映射器(我是其中的贡献者)。
推荐阅读
- google-analytics - 谷歌analytics.js 不工作,但analytics_debug.js 工作
- macos - Mojave 更新后出现“make”问题:致命错误:找不到“wchar.h”文件
- amazon-dynamodb - 没有自定义编组器或 @DynamoDBDocument 注释,无法解组到类型 d
- google-apps-script - 从 Gmail.Users.history.list API 检索历史列表时出错
- java - 如何强制在 Spring Rest MVC 中需要 bean 请求参数?
- android - utf-8 to string 获得额外添加的字符
- node.js - 从 mongodb 中的数组中获取最大值
- sql-server - 在 MS SQL 中获取连接的最佳匹配
- java - 如何在java中将二进制字符串转换为UTF-8文本?
- sql - 提高选择不同查询的执行时间