분류 전체보기82 Exception 예외 계층Object : 예외도 객체. 모든 객체의 최상위 부모는 Object이므로 예외의 최상위 부모도 ObjectThrowable : 최상위 예외Error : 메모리 부족이나 심각한 시스템 오류와 같이 애플리케이션에서 복구 불가능한 시스템 예외개발자는 이 예외를 잡으려고 해서는 안됨상위 예외를 catch로 잡으면 그 하위 예외까지 함께 잡음애플리케이션 로직에서는 Throwable 예외를 잡으면 Error 예외도 함께 잡을 수 있기 때문에 해당 예외를 잡으면 안됨언체크 예외Exception : 체크 예외애플리케이션 로직에서 사용할 수 있는 실질적인 최상위 예외Exception과 그 하위 예외는 모두 컴파일러가 체크하는 체크 예외단 RuntimeException은 예외RuntimeException : 언.. 2024. 11. 27. 예약 리스트 조회 API 최적화 엔티티를 DTO로 변환@GetMapping("/api/v2/reserves")public List reserveV2(){ List reserves = reserveRepository.findAllByString(new ReserveSearch()); List collect = reserves.stream() .map(r -> new ReserveDto(r)) .collect(Collectors.toList()); return collect;}...@Datastatic class ReserveDto{ private Long reserveId; private String name; private LocalDateTime reserveDa.. 2024. 11. 3. 예약 리스트 조회 API 순환참조 해결 순환참조참조하는 대상이 서로 물려 있어 참조할 수 없게 되는 현상JPA에서 양방향으로 연결된 엔티티를 그대로 조회하는 경우, 서로의 정보를 순환하면서 조회하다가 stackoverflow 발생엔티티 직접 노출 AS-IS@Entity@Getter@Setter@NoArgsConstructor(access = AccessLevel.PROTECTED)public class ReserveShop { @Id @GeneratedValue @Column(name = "reserve_shop_id") private Long id; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "reserve_id") // FK 설정, 연관관계 주인 p.. 2024. 10. 29. 예약 조회 API 개발 엔티티 직접 노출@GetMapping("/api/v1/simple-reserves")public List reserve1(){ List all = reserveRepository.findAllByString(new ReserveSearch()); for (Reserve reserve : all) { reserve.getMember().getName(); // Lazy 강제 초기화 } return all;}엔티티를 직접 노출하는 것은 좋지 않음엔티티를 DTO로 변환@GetMapping("/api/v2/simple-reserves")public List reserveV2(){ List reserves = reserveRepository.findAllByString(ne.. 2024. 10. 24. 회원 관련 API 개발 회원 등록 API1. 엔티티를 Request Body에 직접 매핑(요청 값으로 엔티티를 직접 받는 경우)@Entity@Getter@Setterpublic class Member { @Id @GeneratedValue @Column(name = "member_id") private Long id; @NotEmpty private String name; private String phone; @Embedded private Address address; @OneToMany(mappedBy = "member") private List reserves = new ArrayList();}@PostMapping("/api/v1/members")public .. 2024. 10. 17. 설계 엔티티 설계기능 설계회원 기능 회원 등록 회원 조회업체 기능 업체 등록 업체 수정 업체 조회예약 기능 예약 등록 예약 수정 예약 조회 예약 취소기타 요구사항 업체는 예약된 시간에 이용가능 차량 초과 시 예약 불가 업체에 예약 가능한 서비스는 오픈형(openShop), 프라이빗형(privateShop) 존재 업체를 TYPE으로 구분(DiscriminatorColum) 2024. 9. 20. 이전 1 ··· 3 4 5 6 7 8 9 ··· 14 다음