![](/img/trans.png)
[英]rest api - how to send body parameters of postman in rest api call
[英]How to send Time and Date value from Postman to my REST API
我在 postgres 中有一個帶有 jamMulai 的表、帶有 LocalTime 數據類型的 jamSelesai 變量和帶有 LocalDate 變量的 tglTayang 變量的 Schedules 類
@Entity
@Getter
@Setter
@Table(name = "schedules")
public class Schedules implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(columnDefinition = "serial")
private Long scheduleId;
@Column(name = "tgl_tayang",columnDefinition = "DATE")
private LocalDate tglTayang;
@Column(name = "jam_mulai",columnDefinition = "TIME")
private LocalTime jamMulai;
@Column(name = "jam_selesai" ,columnDefinition = "TIME")
private LocalTime jamSelesai;
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "film_id")
private Films filmId;
這是我的 Schedules 類的服務方法
@Override
public void saveSchedule(String jamMulai, String jamSelesai, String tglTayang, Long filmId) {
Schedules schedules = new Schedules();
schedules.setJamMulai(LocalTime.parse(jamMulai));
schedules.setJamSelesai(LocalTime.parse(jamSelesai));
schedules.setTglTayang(LocalDate.parse(tglTayang));
Films films = filmsService.findFilmById(filmId);
schedules.setFilmId(films);
schedulesRepository.save(schedules);
}
這是我的控制器方法
@PostMapping("/admin/add-schedule")
public String addSchedule(@RequestBody Map<String, Object> schedule) {
schedulesService.saveSchedule((String) schedule.get("jamMulai"), (String) schedule.get("jamSelesai"), (String) schedule.get("tglTayang"), (Long) schedule.get("filmId"));
return "Add Films Success!";
}
在 Postgres 數據庫中,jamMulai、jamSelesai 和 tglTayang 的數據類型是沒有時區和日期的時間。
但是當我嘗試使用 Postman 請求 Post
{
"jamMulai":"20:00:00",
"jamSelesai":"23:00:00",
"tglTayang":"2020-05-12",
"filmId":2
}
我明白了
{
"timestamp": "2022-05-17T13:41:52.771+00:00",
"status": 500,
"error": "Internal Server Error",
"path": "/cinema/schedules/admin/add-schedule"
}
我嘗試將 Schedules 類中的數據類型更改為不同的時間和日期,但它仍然不起作用。
我怎樣才能解決這個問題? 謝謝
ps:我知道有一個類似的問題,但這並不能解決我的問題
您說:在 Postgres 數據庫中,jamMulai、jamSelesai 和tglTayang的數據類型是沒有時區和日期的時間。
為什么要定義:
@Column(name = "tgl_tayang",columnDefinition = "DATE")
private LocalDate tglTayang;
不應該是:
@Column(name = "tgl_tayang",columnDefinition = "TIME")
private LocalTime tglTayang;
?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.