У меня есть этот тег ввода, где я должен указать значение времени (часы и минуты).Я не использую HTML 5 "type = 'time'", потому что моя БД получает строку (например, 12:30), таким образом, отказываясь от информации (так как postgres ожидает «время без часового пояса»).Итак, я просто использую маску, чтобы поставить ':', фактически не отправляя их.Но даже без маски, БД не работает должным образом.
Например, если я зайду в свое поле и введу значение '120000' (12:00:00),
![enter image description here](https://i.stack.imgur.com/orGEE.png)
то, что на самом деле сохраняет postgres, таково:
![enter image description here](https://i.stack.imgur.com/MX4ra.png)
Тогда вы думаете: «Хорошо, просто добавьтевремя, используя 8 символов, затем ", давайте попробуем использовать 13301500 (13: 30: 15.00):
![enter image description here](https://i.stack.imgur.com/Rie9C.png)
Результат:
![enter image description here](https://i.stack.imgur.com/NzRfY.png)
Я мог бы показать гораздо больше примеров.Если я введу «1230», я получу «21: 00: 01.23», если я введу «13», я получу «21: 00: 00.013».Иногда я вижу свое введенное значение в конце чисел в БД, но все же я очень запутан.Что я здесь не так делаю?
Это моя кнопка:
<div id="form" class="left">
<input
formControlName="start"
class="form-control"
placeholder="Start">
</div>
И это мой метод публикации (API):
@PostMapping("/turn")
public Turn add(@RequestBody @Valid Turn T) {
return TurnRepo.save(T);
}
А такжепеременная:
@Temporal(TemporalType.TIME)
@Column(name = "start", length = 15)
private Date start;