java—如何在SpringJDBC中实现返回值的更新请求

bbuxkriu  于 2021-07-06  发布在  Java
关注(0)|答案(1)|浏览(275)

我在javaee中有更新请求,postgresql返回2个值。

connection = DriverManager.getConnection(DB_URL, DB_USER, DB_PASSWORD);
            statement = connection.prepareStatement(
                    "UPDATE system.current_orders SET " +
                            "status_id = 3, " +
                            "taken_dt = now(), " +
                            "system_dt = now(), " +
                            "driver_car_id_taken = ?, " +
                            "driver_color_id_taken = ?, " +
                            "WHERE id = ?" +
                            "RETURNING aggregator_id, taxi_name_from"
            );
            statement.setInt(1, driverCarIdTaken);
            statement.setInt(2, driverColorIdTaken);
            statement.setInt(3,orderId);
            resultSet = statement.executeQuery();

            while (resultSet.next()) {
                aggregatorId = resultSet.getInt("aggregator_id");
                token = resultSet.getString("taxi_name_from");
            }

如何在springjdbc中实现这一点,以便在一个更新请求中获得2个值

szqfcxe2

szqfcxe21#

如代码所示,sql语句的工作方式类似于 SELECT 查询,因此使用 executeQuery() .
所以你要像对待一个 SELECT spring jdbc中的查询:
叫一个 jdbcTemplate.query(...) 方法。
在幕后, jdbcTemplate.query(...) 创建 PreparedStatement 还有电话 executeQuery() . 它只不过是一个帮助类。一个非常强大的助手类,有很多很好的特性,但基本上就是这样。
1) 谢谢你的来电 executeUpdate() 当然也是。

相关问题