使用 jdbcTemplate return 1 值的正确方法

proper way to return 1 value with jdbcTemplate

我需要在数据库中查询 1 列的最大值 我正在努力做到这一点

    public static long getLastJobSeqNum(){

    return jdbcTemplate.queryForObject("SELECT max(JOBIQ) as JOBIQ FROM JOBS_RUN_STAT", long.class);
}

即使我知道 db 上有 1 行,我仍然收到空指针错误;似乎这不是查询最大值的保存方式

如何正确制作?

问题是 Spring 试图拆箱成一个长图元。因此,如果您没有元素,则 JOBIQ 也将为 null。最初创建的 null Long 无法在不导致空指针的情况下取消装箱。您可以使用 Long.class 作为第二个参数并将整个方法调用包装在 Optional.ofNullable(<jdbcCall>).orElse(<fallbackvalue>)