Conversation
KateteDeveloper
left a comment
There was a problem hiding this comment.
확인했습니다~! 초기 세팅 수고 많으셨습니다:) LGTM
There was a problem hiding this comment.
Pull request overview
Spring Boot 프로젝트의 초기 부트스트랩(Gradle/Wrapper/기본 설정)과 도메인 중심 패키지 구조(미션/멤버/리뷰) 스캐폴딩, Swagger(OpenAPI) 설정을 추가하는 PR입니다.
Changes:
- Spring Boot/Gradle Wrapper 기반 프로젝트 기본 세팅 및 실행 스크립트 추가
domain/*중심 패키지 구조와 관련 클래스(현재는 빈 스텁) 생성- MySQL/JPA 설정 및 Swagger(OpenAPI + JWT 스키마) 설정 추가
Reviewed changes
Copilot reviewed 52 out of 55 changed files in this pull request and generated 15 comments.
Show a summary per file
| File | Description |
|---|---|
| src/test/java/com/example/umc10th/Umc10thApplicationTests.java | 기본 Spring context 로드 테스트 추가 |
| src/main/resources/application.yml | DB/JPA 기본 설정 추가 |
| src/main/java/com/example/umc10th/Umc10thApplication.java | Spring Boot main 애플리케이션 엔트리 추가 |
| src/main/java/com/example/umc10th/global/config/SwaggerConfig.java | OpenAPI/Swagger 설정 및 보안 스키마 추가 |
| src/main/java/com/example/umc10th/domain/review/service/ReviewService.java | 리뷰 도메인 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/review/repository/ReviewRepository.java | 리뷰 도메인 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/review/exception/ReviewException.java | 리뷰 도메인 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/review/exception/code/ReviewSuccessCode.java | 리뷰 도메인 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/review/exception/code/ReviewErrorCode.java | 리뷰 도메인 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/review/entity/Review.java | 리뷰 도메인 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/review/dto/ReviewResDTO.java | 리뷰 도메인 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/review/dto/ReviewReqDTO.java | 리뷰 도메인 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/review/converter/ReviewConverter.java | 리뷰 도메인 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/review/controller/ReviewController.java | 리뷰 도메인 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/mission/service/MissionService.java | 미션 도메인 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/mission/repository/MissionRepository.java | 미션 도메인 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/mission/exception/MissionExcepotion.java | 미션 도메인 예외 스캐폴딩(현재 오타 포함) |
| src/main/java/com/example/umc10th/domain/mission/exception/code/MissionSuccessCode.java | 미션 도메인 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/mission/exception/code/MissionErrorCode.java | 미션 도메인 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/mission/erntity/Region.java | 미션 도메인 엔티티 스캐폴딩(현재 패키지명 오타 포함) |
| src/main/java/com/example/umc10th/domain/mission/erntity/Mission.java | 미션 도메인 엔티티 스캐폴딩(현재 패키지명 오타 포함) |
| src/main/java/com/example/umc10th/domain/mission/erntity/Market.java | 미션 도메인 엔티티 스캐폴딩(현재 패키지명 오타 포함) |
| src/main/java/com/example/umc10th/domain/mission/erntity/mapping/Particiopate.java | 미션 매핑 엔티티 스캐폴딩(현재 오타/패키지명 오타 포함) |
| src/main/java/com/example/umc10th/domain/mission/enums/ParticipatedStatus.java | 미션 enum 스캐폴딩(현재 class로 선언) |
| src/main/java/com/example/umc10th/domain/mission/enums/MissionStatus.java | 미션 enum 스캐폴딩(현재 class로 선언) |
| src/main/java/com/example/umc10th/domain/mission/dto/MissionResDTO.java | 미션 DTO 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/mission/dto/MissionReqDTO.java | 미션 DTO 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/mission/converter/MissionConverter.java | 미션 변환기 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/mission/controller/MissionController.java | 미션 컨트롤러 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/member/service/MewmberService.java | 멤버 서비스 스캐폴딩(현재 오타 포함) |
| src/main/java/com/example/umc10th/domain/member/repository/MemberRepository.java | 멤버 리포지토리 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/member/exception/MemberExpection.java | 멤버 예외 스캐폴딩(현재 오타 포함) |
| src/main/java/com/example/umc10th/domain/member/exception/code/MemberSuccessCode.java | 멤버 도메인 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/member/exception/code/MemberErrorCode.java | 멤버 도메인 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/member/enums/UserType.java | 멤버 enum 스캐폴딩(현재 class로 선언) |
| src/main/java/com/example/umc10th/domain/member/enums/NotifictationType.java | 멤버 enum 스캐폴딩(현재 오타/ class로 선언) |
| src/main/java/com/example/umc10th/domain/member/enums/Gender.java | 멤버 enum 스캐폴딩(현재 class로 선언) |
| src/main/java/com/example/umc10th/domain/member/entity/Term.java | 약관 엔티티 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/member/entity/Notification.java | 알림 엔티티 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/member/entity/Member.java | 멤버 엔티티 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/member/entity/mapping/UserTermAgreement.java | 약관동의 매핑 엔티티 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/member/entity/mapping/Preference.java | 선호 매핑 엔티티 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/member/entity/FoodCategory.java | 음식 카테고리 엔티티 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/member/dto/MemberResDTO.java | 멤버 DTO 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/member/dto/MemberReqDTO.java | 멤버 DTO 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/member/converter/MemberConverter.java | 멤버 변환기 스캐폴딩(빈 클래스) |
| src/main/java/com/example/umc10th/domain/member/controller/MemberController.java | 멤버 컨트롤러 스캐폴딩(빈 클래스) |
| settings.gradle | rootProject 이름 설정 |
| gradlew.bat | Gradle Wrapper Windows 스크립트 추가 |
| gradlew | Gradle Wrapper POSIX 스크립트 추가 |
| gradle/wrapper/gradle-wrapper.properties | Gradle wrapper 배포 URL/설정 추가 |
| gradle/wrapper/gradle-wrapper.jar | Gradle wrapper JAR 추가 |
| build.gradle | Gradle 빌드/의존성/Swagger 설정 추가 |
| .gitignore | 빌드 산출물/IDE 파일/민감정보 무시 규칙 추가 |
| .gitattributes | EOL 및 binary 속성 설정 추가 |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| // JWT 토큰 헤더 방식 | ||
| String securityScheme = "JWT TOKEN"; | ||
| SecurityRequirement securityRequirement = new SecurityRequirement().addList(securityScheme); | ||
|
|
||
| Components components = new Components() | ||
| .addSecuritySchemes(securityScheme, new SecurityScheme() | ||
| .name(securityScheme) | ||
| .type(SecurityScheme.Type.HTTP) | ||
| .scheme("Bearer") | ||
| .bearerFormat("JWT")); |
There was a problem hiding this comment.
For an HTTP Bearer auth scheme, OpenAPI expects .scheme("bearer") (lowercase) and the header name is typically Authorization. Using .scheme("Bearer") and .name("JWT TOKEN") can cause Swagger UI not to send the token correctly.
| jpa: | ||
| database: mysql | ||
| database-platform: org.hibernate.dialect.MySQLDialect | ||
| show-sql: true | ||
| hibernate: | ||
| ddl-auto: update |
There was a problem hiding this comment.
spring.jpa.hibernate.ddl-auto: update in the default (non-profiled) config can unexpectedly mutate schemas when the app runs in non-dev environments. Consider moving this to a local/dev profile and using validate (or disabling DDL auto) by default.
| driver-class-name: com.mysql.cj.jdbc.Driver | ||
| url: ${DB_URL} # jdbc:mysql://localhost:3306/{???????} | ||
| username: ${DB_USER} | ||
| password: ${DB_PW} |
There was a problem hiding this comment.
The inline JDBC URL example comment contains unreadable placeholder text ({???????}), which makes onboarding harder. Please replace with a valid example (e.g., jdbc:mysql://localhost:3306/<db_name>), or use a default value in ${DB_URL:...}.
| @@ -0,0 +1,4 @@ | |||
| package com.example.umc10th.domain.member.service; | |||
|
|
|||
| public class MewmberService { | |||
There was a problem hiding this comment.
Class/file name has a typo: MewmberService should be MemberService (and the filename should match). Fixing early avoids breaking package/class references as more code is added.
| public class MewmberService { | |
| public class MemberService { |
| @@ -0,0 +1,4 @@ | |||
| package com.example.umc10th.domain.member.exception; | |||
|
|
|||
| public class MemberExpection { | |||
There was a problem hiding this comment.
Class/file name has a typo: MemberExpection should be MemberException (and the filename should match). This will reduce confusion and prevent import/name mismatches later.
| public class MemberExpection { | |
| public class MemberException { |
| @@ -0,0 +1,4 @@ | |||
| package com.example.umc10th.domain.member.enums; | |||
|
|
|||
| public class UserType { | |||
There was a problem hiding this comment.
This file is under an enums package but declares a class. If this is intended to be an enum, declare it as enum; otherwise move it out of the enums package to avoid misleading structure.
| public class UserType { | |
| public enum UserType { |
| @@ -0,0 +1,4 @@ | |||
| package com.example.umc10th.domain.member.enums; | |||
|
|
|||
| public class Gender { | |||
There was a problem hiding this comment.
This file is under an enums package but declares a class. If this is intended to be an enum, declare it as enum; otherwise move it out of the enums package to avoid misleading structure.
| public class Gender { | |
| public enum Gender { |
| @@ -0,0 +1,4 @@ | |||
| package com.example.umc10th.domain.member.enums; | |||
|
|
|||
| public class NotifictationType { | |||
There was a problem hiding this comment.
NotifictationType has a typo (likely NotificationType). Also, since this is in an enums package, consider making it an enum rather than an empty class to match the package meaning.
| public class NotifictationType { | |
| public enum NotifictationType { | |
| ; |
| package com.example.umc10th.domain.mission.enums; | ||
|
|
||
| public class MissionStatus { | ||
| } |
There was a problem hiding this comment.
This file is under an enums package but declares a class. If this is intended to be an enum, declare it as enum; otherwise move it out of the enums package.
| package com.example.umc10th.domain.mission.enums; | ||
|
|
||
| public class ParticipatedStatus { | ||
| } |
There was a problem hiding this comment.
This file is under an enums package but declares a class. If this is intended to be an enum, declare it as enum; otherwise move it out of the enums package.
|
약관과 알림 테이블을 분리하여 각 기능이 더 독립적으로 작동하게 된 것 같아요! 수고하셨습니다!!! |
yangjiae12
left a comment
There was a problem hiding this comment.
코멘트 달은 것 외에는 미션 잘 진행해주신 것 같습니다! 수고하셨습니다~
There was a problem hiding this comment.
에러코드와 성공코드 또한 enum으로 바꿔주시길 바랍니다!
yangjiae12
left a comment
There was a problem hiding this comment.
luke 폴더 내에 프로젝트 파일이 들어가도록 해주시길 바랍니다!
🚩 관련 이슈
없음
📌 구현 결과
term,user_term_agreement로 분리notification테이블로 분리❓ 리뷰 요청
🤔 질문
💬 기타 공유 사항