В моей базе данных PostgreSQL есть последовательность, которая генерирует номер order_number для моей таблицы заказов при вставке (столбец, не являющийся первичным ключом):
Моя проблема заключается в том, что после сохранения заказа номер заказа равен нулю:
kotlin
Код: Выделить всё
// Save order
order = orderRepository.save(order)
// order.orderNumber is null here
sendEmail(order) // Need order_number here
indexOrder(order) // Need order_number here too
Как получить сгенерированное значение order_number после сохранения? Обратите внимание, что это НЕ столбец первичного ключа.
Субъект:
Код: Выделить всё
@Entity
@Table(name = "orders")
class Order(
@Id val id: UUID = UUID.randomUUID(),
@Column(name = "order_number")
var orderNumber: Long? = null,
// other fields...
)
Я пытался получить объект с помощью orderRepository.findById(order.id) перед вызовом метода отправки электронной почты и индексирования, но все равно не работает: orderNumber для заказа все еще ноль
Подробнее здесь:
https://stackoverflow.com/questions/793 ... on-pk-colu