[Aribnb]年-月-日(yyy-MM-dd)形式出力
11029 ワード
問題の状況
旅行予約票ページでは、登録日、決済日が「yyy-MM-dd HH:mm:ss」と出力されます.今は時間がかかりませんので、日付フォーマットを「yyy-MM-dd」に変換したいと思います.
既存のコード
// 숙소를 예약했을 때
@PostMapping("/book/save")
public String bookComplete(BookedHomeSaveRequestDto requestDto, @LoginUser SessionUser user)
throws ParseException {
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
BookedHome bookedHome = BookedHome.builder()
.userid(user.getId())
.status(1)
.home(homeService.findById(requestDto.getId()))
.checkin(new Date(dateFormat.parse(requestDto.getCheckin()).getTime()))
.checkout(new Date(dateFormat.parse(requestDto.getCheckout()).getTime()))
.build();
homeService.addBookedHome(bookedHome);
return "redirect:/mypage/travel";
}
- new SimpleDateFormat("yyyy-MM-dd");指定したい日付フォーマットが生成されます.
- new Date(dateFormat.parse(requestDto.getCheckin()).getTime())
BookedHomeSaveRequestDtoに格納されているチェックイン日とチェックアウト日を生成されたフォーマットに変換し、Dateオブジェクトを作成/保存するために日付を返します.
-結果
「2021-11-03 00:00:00」として出力します.
🔵 修正されたコード
// 숙소를 예약했을 때
@PostMapping("/book/save")
public String bookComplete(BookedHomeSaveRequestDto requestDto, @LoginUser SessionUser user)
throws ParseException {
LocalDate checkIn = LocalDate.parse(requestDto.getCheckin(), DateTimeFormatter.ofPattern("yyyy-MM-dd")); //체크인 날짜 형식 변환
LocalDate checkOut = LocalDate.parse(requestDto.getCheckout(), DateTimeFormatter.ofPattern("yyyy-MM-dd")); //체크인 날짜 형식 변환
BookedHome bookedHome = BookedHome.builder()
.userid(user.getId())
.status(1)
.home(homeService.findById(requestDto.getId()))
.checkin(checkIn)
.checkout(checkOut)
.build();
homeService.addBookedHome(bookedHome);
return "redirect:/mypage/travel";
}
- LocalDate.parse(requestDto.getCheckin(), DateTimeFormatter.ofPattern("yyyy-MM-dd"));BookedHomeSaveRequestDtoに格納されているチェックイン日(String)とチェックアウト日(String)をyyy-MM-dd形式のLocalDateオブジェクトとして作成します.
- .checkin(checkIn).checkout(checkOut)
BookedHomeのcheckin、checkoutフィールドのタイプは既存のものと同じで、「2021-11-0300:00」のように同じフォーマットで出力されます.
したがって、このフィールドのタイプをLocalDateに変更します.
🟢 出力結果
Reference
この問題について([Aribnb]年-月-日(yyy-MM-dd)形式出力), 我々は、より多くの情報をここで見つけました https://velog.io/@ihj0043/Aribnb-년-월-일yyyy-MM-dd-형식으로-출력テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol