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

전남대 BE_안원모_3주차 과제(3단계) #447

Merged
merged 49 commits into from
Jul 16, 2024

Conversation

Wonmoan
Copy link

@Wonmoan Wonmoan commented Jul 15, 2024

안녕하세요 피케이 멘토님!
페이지네이션 구현시에 상품 이름으로 정렬하면 (Product1~Product15)
Product1, Product10 ~ Product15,Product2,product3 ... 순으로 정렬이 되어

'숫자가 포함된 문자열' 을 정렬하기 위한 로직을 추가했습니다.
id로 정렬하면 위의 product10번대 상품들이 product2보다 먼저 정렬되는 문제가 해결되지만
이는 상품이 등록된 순서로 정렬하는 것 과 마찬가지라고 생각해서 따로 로직을 생성해보았습니다.

이전 리뷰에서 남겨주신 사항등 반영하였습니다.
이전 리뷰사항 아직 반영하지 않은 부분이 있는데 답변 달리는대로 다음 step에 적용하겠습니다.
#251 (comment)

Wonmoan added 30 commits July 11, 2024 15:00
Comment on lines 31 to 38
@PostMapping("/register")
public ResponseEntity<Map<String, String>> register(@Valid @RequestBody MemberDTO memberDTO) {
Member member = memberDTO.toEntity();
Member savedMember = memberService.createMember(member);
Map<String, String> response = new HashMap<>();
response.put("token", jwtService.generateToken(savedMember));
return ResponseEntity.ok(response);
}
Copy link
Author

Choose a reason for hiding this comment

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

예외를 잡아서 다시 runtime exception 하는 방식에서
GlobalExceptionHandler 에서 에외처리 할 수 있도록
기존의 예외를 다시 던지는 코드 수정했습니다.

Comment on lines 17 to 20
@NotNull
@JsonManagedReference
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "member_id", nullable = false)
Copy link
Author

Choose a reason for hiding this comment

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

기존 FetchType.LAZY에서
현재 서비스에선 wish 엔티가 작업될 때 member ,product 정보가 항상 포함 되어 함께 사용 되는 것 같다고 생각이 들어
FetchType.LAZY 에서 FetchType.EAGER 로 변경했습니다.

Copy link

@pkeugine pkeugine left a comment

Choose a reason for hiding this comment

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

안녕하세요 원모님,
해당 미션은 여기서 머지하도록 하겠습니다.
다음 미션에서 뵙겠습니다.

Comment on lines +7 to +39
@Override
public int compare(String o1, String o2) {
if (o1 == null || o2 == null) {
return o1 == null ? -1 : 1;
}

int i = 0, j = 0;
while (i < o1.length() && j < o2.length()) {
char c1 = o1.charAt(i);
char c2 = o2.charAt(j);

if (Character.isDigit(c1) && Character.isDigit(c2)) {
int num1 = 0, num2 = 0;
while (i < o1.length() && Character.isDigit(o1.charAt(i))) {
num1 = num1 * 10 + (o1.charAt(i) - '0');
i++;
}
while (j < o2.length() && Character.isDigit(o2.charAt(j))) {
num2 = num2 * 10 + (o2.charAt(j) - '0');
j++;
}
if (num1 != num2) {
return Integer.compare(num1, num2);
}
} else {
if (c1 != c2) {
return Character.compare(c1, c2);
}
i++;
j++;
}
}

Choose a reason for hiding this comment

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

알고리즘 코드 보고 가져온 것 같은 느낌이 강한데,
이왕이면 이 코드도 변수명, 메서드 분리 등
컨벤션을 신경써서 작성해보면 좋을 것 같아요.

@pkeugine pkeugine merged commit 2cb6b0c into kakao-tech-campus-2nd-step2:wonmoan Jul 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants