기능구현_백경환 - WIYA-waitinyourarea/wiya GitHub Wiki
|
💡 저장소 링크 |
- 병원 등록
-
병원
은 등록([생성 메소드] 시, @ManyToOne으로 양방향 연관관계 매핑 되어있는병원 사진
과 함께 등록 (등록 서비스 메소드) -
시,구
는 일종의 카테고리 처럼 해당 병원이 어떤 구에 위치해 있는지를 나타냄-
병원의 주소 정보를 담고있는 임베디드 타입 객체를 만들 때 카카오 주소 API(코드)를 통해서 좌표와 법정동 코드를 저장
-
특정 병원은 서울시도 참조를 하지만, 강남구도 참조를 해야되므로 @ManyToMany관계처럼 보일 수 있으나, 다대다 매핑은 중간 테이블의 한계점이 많으므로 시, 구를
자기 참조
하는 형태로 하여 해결
-
- 시, 구의 계층형 카테고리
-
시,구
엔티티의 어떤 구들은 시의 포함이 되어 있기 때문에 자기 참조
- 병원 수정
- 병원 수정은
더티체킹
을 통한 update (업데이트 메소드)- 주소같은 임베디드 타입은 새로운 값 입력 시, 새로운 객체를 만들어 초기화
- 사진은 해당 병원을 참조하고 있는 이미지를 삭제하거나, 새로운 이미지를 추가할 수 있어야함
- 양방향 관계에
cascade = CascadeType.ALL, orphanRemoval = true
설정을 통해 리스트에서 제거해 고아객체를 만들어 삭제 (변경, 삭제 코드)
- 병원 검색과 페이징 처리
- JPQL 쿼리문과 .setFirstResult(), .setMaxResults()를 통한 페이징 처리(쿼리 코드)
- 병원 상세페이지 및 줄서기
- 병원 상세페이지에서 줄서기 버튼을 누르면 Ajax로 병원 줄서는 요청이 발송됨(아직 구현 중)
- 회원가입
- 중복되는 메일이 있는지 Ajax로 체크함
- 메일
인증 버튼
을 누르면 메일로 난수를 메일 발송(코드)하고 해당 난수를 세션에 저장 - 가입 요청 시, 입력한 인증번호가 세션과 일치하면 가입 성공
- 가입시 입력 비밀번호는 해싱과 솔팅을 하여 암호화 처리
- 로그인 인증, 인가