User
Да, видел, как пример написал, возможно кому-то будет полезно.
В postgres можно делая INSERT вернуть значение последовательности:
@Data @Accessors(chain = true) public static class Note { private Long id; private String data; }
public Note save(Note entity) { var sql = """ INSERT INTO notes (id, data) VALUES (default, :data) RETURNING id """; var params = new MapSqlParameterSource().addValue("data", entity.getData()); return namedParameterJdbcTemplate.query(sql, params, x -> { if (x.next()) { entity.setId(x.getLong("id")); } return entity; }); }
Таким образом, сделать все за один запрос.Если необходим батч, то прийдется заранее получить IDки:
SELECT nextval('notes_id_seq') FROM generate_series(1, :size)
Да, видел, как пример написал, возможно кому-то будет полезно.
В postgres можно делая INSERT вернуть значение последовательности:
Таким образом, сделать все за один запрос.
Если необходим батч, то прийдется заранее получить IDки: