1. jpa에서 setter를 지양하는 이유 - ??추가할 예정
2.특정 날짜의 요일 구하기
LocalDateTime date = LocalDateTime.now();
DayOfWeek dayOfWeek = date.getDayOfWeek();
if(store.getClosedDays().equals(dayOfWeek.getDisplayName(TextStyle.FULL, Locale.KOREAN))){
throw new ApplicationException(CLOSED_DAY_STORE);
}
3. git 강제 pull
git fetch --all
git reset --hard origin/master
git pull origin master
4. jpa pageable 사이즈 제한
private static final int[] ALLOWED_PAGE_SIZES = {10, 30, 50};
private static final int DEFAULT_PAGE_SIZE = 10;
...
@GetMapping
@Operation(summary = "주문 전체 조회", description = "주문에 대한 전체 리스트 조회")
public Response<Page<OrderFindResponse>> findOrders(OrderSearchRequest searchDto,
Pageable pageable,
@AuthenticationPrincipal UserDetailsImpl userDetails) {
int size = DEFAULT_PAGE_SIZE; // 기본 10건
if(Arrays.stream(ALLOWED_PAGE_SIZES).anyMatch(s->s == pageable.getPageSize())){ //요청 사이즈가 10, 30, 50일 때
size = pageable.getPageSize();
}
Pageable validatedPageable = PageRequest.of(pageable.getPageNumber(), size, pageable.getSort());
return Response.success(orderService.findAllOrders(searchDto, validatedPageable, userDetails.getUser()));
}
5. UUID랑 Integer는 @NOTNULL 사용하기
https://wildeveloperetrain.tistory.com/68
6. 현재 시간은 운영시간에 포함되는지?? 정답은 아닌 거 같음...;;;
public static boolean checkTime(LocalTime startTime , LocalTime endTime, LocalDateTime now){
LocalDateTime startDateTime = now.with(startTime);
LocalDateTime endDateTime = now.with(endTime);
if (endTime.isBefore(startTime)) {
// 자정을 넘는 시간 범위 처리 (예: 22:00 ~ 03:30)
if (now.toLocalTime().isBefore(endTime)) {
startDateTime = startDateTime.minusDays(1);
}
}
log.info("now.isAfter(startDateTime) {}", now.isAfter(startDateTime));
log.info("now.isBefore(endDateTime) {}", now.isBefore(endDateTime));
return now.isAfter(startDateTime) && now.isBefore(endDateTime);
}
'TIL' 카테고리의 다른 글
[TIL 2024/09/03] Postman API 자동화 테스트 (0) | 2024.09.04 |
---|---|
[TIL 2024/09/02] Docker EC2 실행 방법 (0) | 2024.09.02 |
[TIL] 2024/08/29 (0) | 2024.09.02 |
[TIL] 2024/08/28 (0) | 2024.08.29 |
[TIL] 2024/08/27 (0) | 2024.08.28 |