我正在使用 Spring 的 NamedParameterJdbcTemplate 执行插入到表中。该表在序列上使用 NEXTVAL 来获取主键。然后,我希望将此生成的 ID 传回给我。我正在使用 Spring 的 KeyHolder 实现,如下所示:
KeyHolder key = new GeneratedKeyHolder();
jdbcTemplate.update(Constants.INSERT_ORDER_STATEMENT, params, key);
但是,当我运行此语句时,我得到:
org.springframework.dao.DataRetrievalFailureException: The generated key is not of a supported numeric type. Unable to cast [oracle.sql.ROWID] to [java.lang.Number]
at org.springframework.jdbc.support.GeneratedKeyHolder.getKey(GeneratedKeyHolder.java:73)
有什么我想念的想法吗?