Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat : 레이싱게임 정보 엔티티,서비스로직,api 개발, 테스트코드 작성 + 레디스 도입 (CC-118) #17

Merged
merged 26 commits into from
Aug 6, 2024

Conversation

j2noo
Copy link
Collaborator

@j2noo j2noo commented Aug 5, 2024

📝 작업내용

  • RacingGameInfo 엔티티를 만들고, 레디스의 RedisTemplate으로 적용하였다
  • 'racingGameInfo` 라는 키 이름으로 가지는 해시 자료구조이다.
  • LocalDateTime이JSON으로 직렬/역직렬화 되지 않아서 관련 설정을 추가하였음
  • 레이싱게임정보 등록/조회/시작여부 판별하는 서비스로직 및 api 개발
  • Mockito를 이용한 단위테스트 작성!

💬 침고사항

📖 레퍼런스

j2noo added 19 commits August 5, 2024 14:56
@j2noo j2noo added 진우 feat📌 기능 개발 labels Aug 5, 2024
@j2noo j2noo self-assigned this Aug 5, 2024
@j2noo j2noo changed the title feat : 레이싱게임 정보 엔티티,서비스로직,api 개발, 테스트코드 작성 + 레디스 도입 feat : 레이싱게임 정보 엔티티,서비스로직,api 개발, 테스트코드 작성 + 레디스 도입 (CC-118) Aug 5, 2024
@j2noo
Copy link
Collaborator Author

j2noo commented Aug 5, 2024

어쩌다보니 커밋이 400줄..ㅎ 테스트코드가 한 100줄쯤 되고 PR단위를 줄여보도록 하겠음~


@Slf4j
@Service
@RequiredArgsConstructor(access = AccessLevel.PROTECTED)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@requiredargsconstructor 어노테이션은 클래스에 선언된 final 변수들, 필드들을 매개변수로 하는 생성자를 자동으로 생성해주는 어노테이션이고, AccessLevel.PROTECTED를 무슨 이유로 썻는지 알 수 있을까요?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

제가 잘못 사용했네요.
엔티티에 @builder를 사용할 때 기본 생성자를 생성하되, 무분별한 생성자를 막기 위해
@NoArgsConstrutor(access = AccessLevel.PROTECTED)를 사용하는게 맞는 방식인데, 전혀 엉뚱한 곳에 달아버렸네요. 수정하겠습니다.
아래 글도 읽으면 좋을 것 같아요

https://cobbybb.tistory.com/14
https://jaehoney.tistory.com/287

@@ -19,6 +21,11 @@ private SuccessResponse(SuccessCode successCode, T data) {
this.data = data;
}

// 성공 관련 정보, 반환 데이터를 파라미터로 받는 생성자
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

반환 데이터를 파라미터로 받는 생성자 요 문구는 복붙하면서 생긴..?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

수정하겠읍니다


@Repository
@RequiredArgsConstructor

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

빈라인

Copy link
Collaborator Author

@j2noo j2noo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

리뷰에 남긴 블로그 한번 읽어보고, dtoentity에서 빌더패턴과 롬복생성자를 사용하는 이유를 같이 공부해봅시다


@Slf4j
@Service
@RequiredArgsConstructor(access = AccessLevel.PROTECTED)
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

제가 잘못 사용했네요.
엔티티에 @builder를 사용할 때 기본 생성자를 생성하되, 무분별한 생성자를 막기 위해
@NoArgsConstrutor(access = AccessLevel.PROTECTED)를 사용하는게 맞는 방식인데, 전혀 엉뚱한 곳에 달아버렸네요. 수정하겠습니다.
아래 글도 읽으면 좋을 것 같아요

https://cobbybb.tistory.com/14
https://jaehoney.tistory.com/287

@@ -19,6 +21,11 @@ private SuccessResponse(SuccessCode successCode, T data) {
this.data = data;
}

// 성공 관련 정보, 반환 데이터를 파라미터로 받는 생성자
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

수정하겠읍니다

Copy link
Collaborator

@putdata putdata left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nice

@putdata putdata merged commit 1c5530a into develop Aug 6, 2024
1 check passed
@putdata putdata deleted the CC-118 branch August 6, 2024 06:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feat📌 기능 개발 진우
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants