Spring Boot 기반 백엔드 서버 개발
Memorial: 오늘의 기일, 오늘의 추모관 API 개발
오늘의 기일
- 로직: 현재 날짜와 모든 등록된 캐릭터의 사망날짜의 월&일을 비교하여 같은 캐릭터의 id들만 select
- 쿼리(MySQL):
select character_id from character where month(death_of_day) = month(curdate()) and day(death_of_day) = day(curdate());
- SQL Injection 방지, 타입 안정성 보장, 컴파일 시점 오류 검출 등을 위해
QueryDSL을 사용해 쿼리를 실제 서버에 구현하였습니다.
- 추가한 관련 클래스:
TodayAnniversariesResponse
오늘의 추모관
- 로직: 현재 날짜의 시작 시간(00:00:00.0)부터 종료 시간(23:59:59.9) 내에 생성된 댓글을 추모관별로 그룹화하여 각각 카운트한 뒤, 카운트가 가장 높은 추모관의 id만 select
- 쿼리(MySQL):
select memorial_id from memorial_comment where date(created_at) = curdate() group by memorial_id order by count(*) desc limit 1;
- SQL Injection 방지, 타입 안정성 보장, 컴파일 시점 오류 검출 등을 위해
QueryDSL을 사용해 쿼리를 실제 서버에 구현하였습니다.
- 추가한 관련 클래스:
TodayMemorialResponse
Community: 커뮤니티 좋아요 API 기여
- PostLike, PostCommentLike의 등록/삭제 API를 구현했습니다.