Skip to content

Commit 58f20db

Browse files
authored
🔀 Feature/#101 각종 유효성 처리 최종
🔀 Feature/#101 각종 유효성 처리 최종
2 parents b207681 + 58e6612 commit 58f20db

File tree

14 files changed

+71
-21
lines changed

14 files changed

+71
-21
lines changed

src/main/java/com/boggle_boggle/bbegok/controller/RedisController.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import com.boggle_boggle.bbegok.dto.request.RecentSearchRequest;
77
import com.boggle_boggle.bbegok.dto.response.SearchLogListResponse;
88
import com.boggle_boggle.bbegok.service.SearchLogService;
9+
import jakarta.validation.Valid;
910
import lombok.RequiredArgsConstructor;
1011
import org.springframework.security.core.annotation.AuthenticationPrincipal;
1112
import org.springframework.security.core.userdetails.UserDetails;
@@ -29,15 +30,15 @@ public DataResponseDto<List<String>> getRecentSearchLogs(@AuthenticationPrincipa
2930
//최근검색어 저장
3031
@PostMapping
3132
public DataResponseDto<Void> saveRecentSearchLogs(@AuthenticationPrincipal UserDetails userDetails,
32-
@RequestBody RecentSearchRequest request) {
33+
@Valid @RequestBody RecentSearchRequest request) {
3334
SearchLogService.saveRecentSearchLogs(userDetails.getUsername(), request.getKeyword());
3435
return DataResponseDto.empty();
3536
}
3637

3738
//최근검색어 삭제
3839
@DeleteMapping
3940
public DataResponseDto<Void> deleteRecentSearchLogs(@AuthenticationPrincipal UserDetails userDetails,
40-
@RequestBody DeleteRecentSearchRequest request) {
41+
@Valid @RequestBody DeleteRecentSearchRequest request) {
4142
SearchLogService.deleteRecentSearchLog(userDetails.getUsername(), request.getKeyword());
4243
return DataResponseDto.empty();
4344
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,14 @@
11
package com.boggle_boggle.bbegok.dto.request;
22

3+
import jakarta.validation.constraints.NotBlank;
4+
import jakarta.validation.constraints.NotNull;
35
import lombok.Getter;
46
import lombok.ToString;
57

68
@Getter
79
@ToString
810
public class DeleteRecentSearchRequest {
11+
@NotNull
12+
@NotBlank
913
private String keyword;
1014
}
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,15 @@
11
package com.boggle_boggle.bbegok.dto.request;
22

33
import jakarta.validation.constraints.NotBlank;
4+
import jakarta.validation.constraints.NotNull;
45
import jakarta.validation.constraints.Size;
56
import lombok.Getter;
67
import lombok.Setter;
78

89
@Getter
910
public class LibraryRequest {
1011
@NotBlank
12+
@NotNull
1113
@Size(max = 15)
1214
private String libraryName;
1315
}

src/main/java/com/boggle_boggle/bbegok/dto/request/NewNoteRequest.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,13 @@ public class NewNoteRequest {
2424

2525
private JsonNullable<LocalDateTime> selectedDate = JsonNullable.undefined();
2626

27-
@Size(max = 30)
27+
@Size(max = 50)
2828
private JsonNullable<String> title = JsonNullable.undefined();
2929

30-
@Size(max = 255)
30+
@Size(max = 1024)
3131
private JsonNullable<String> content = JsonNullable.undefined();
3232

33+
@Size(min = 1, max = 99999)
3334
private JsonNullable<Integer> page = JsonNullable.undefined();
3435

3536
private JsonNullable<PagesDto> pages = JsonNullable.undefined();

src/main/java/com/boggle_boggle/bbegok/dto/request/NewReadingRecordRequest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.boggle_boggle.bbegok.dto.request;
22

33
import com.boggle_boggle.bbegok.enums.ReadStatus;
4+
import jakarta.validation.constraints.NotBlank;
45
import jakarta.validation.constraints.NotNull;
56
import lombok.Getter;
67
import lombok.NoArgsConstructor;
@@ -15,7 +16,7 @@
1516
@NoArgsConstructor
1617
@ToString
1718
public class NewReadingRecordRequest {
18-
@NotNull
19+
@NotNull @NotBlank
1920
private String isbn;
2021
@NotNull
2122
private ReadStatus readStatus;

src/main/java/com/boggle_boggle/bbegok/dto/request/NickNameRequest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
@Getter
99
public class NickNameRequest {
1010
@NotBlank
11-
@Size(max = 20)
11+
@NotNull
12+
@Size(max = 12)
1213
private String nickname;
1314
}

src/main/java/com/boggle_boggle/bbegok/dto/request/RecentSearchRequest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
@Getter
1010
@ToString
1111
public class RecentSearchRequest {
12-
@NotBlank
13-
@Size(min = 1, max = 255)
12+
@NotNull
13+
@Size(min = 1, max = 100)
1414
private String keyword;
1515
}

src/main/java/com/boggle_boggle/bbegok/entity/Note.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,16 +29,16 @@ public class Note {
2929
private ReadingRecord readingRecord;
3030

3131
@ManyToOne(fetch = FetchType.LAZY)
32-
@JoinColumn(name = "read_date_seq", nullable = true)
32+
@JoinColumn(name = "read_date_seq")
3333
private ReadDate readDate;
3434

35-
@Column(name = "title", length = 30)
35+
@Column(name = "title", length = 50)
3636
private String title;
3737

38-
@Column(name = "content", length = 255)
38+
@Column(name = "content", length = 1024)
3939
private String content;
4040

41-
@Column(name = "page", nullable = true)
41+
@Column(name = "page")
4242
private Integer page;
4343

4444
@Embedded

src/main/java/com/boggle_boggle/bbegok/entity/Terms.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ public class Terms {
1919
@Column(name = "title", nullable = false)
2020
private String title;
2121

22-
@Column(name = "content", length = 1000, nullable = false)
22+
@Column(name = "content", nullable = false)
2323
private String content;
2424

2525
@Column(name = "version", nullable = false)

src/main/java/com/boggle_boggle/bbegok/exception/handler/ExceptionHandler.java

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,9 @@
66
import jakarta.validation.ConstraintViolationException;
77
import org.springframework.http.HttpHeaders;
88
import org.springframework.http.HttpStatus;
9+
import org.springframework.http.HttpStatusCode;
910
import org.springframework.http.ResponseEntity;
11+
import org.springframework.web.bind.MethodArgumentNotValidException;
1012
import org.springframework.web.bind.annotation.RestController;
1113
import org.springframework.web.bind.annotation.RestControllerAdvice;
1214
import org.springframework.web.context.request.WebRequest;
@@ -17,13 +19,19 @@
1719
@RestControllerAdvice(annotations = {RestController.class})
1820
public class ExceptionHandler extends ResponseEntityExceptionHandler {
1921

20-
/** 유효성 검사 실패 처리
21-
*/
22+
/** 유효성 검사 실패 처리 (RequestBody - @Valid) */
23+
@Override
24+
protected ResponseEntity<Object> handleMethodArgumentNotValid(
25+
MethodArgumentNotValidException ex, HttpHeaders headers,
26+
HttpStatusCode status, WebRequest request) {
27+
return handleExceptionInternal(ex, Code.VALIDATION_ERROR, request);
28+
}
29+
30+
/** 유효성 검사 실패 처리 (RequestParam, PathVariable - @Validated) */
2231
@org.springframework.web.bind.annotation.ExceptionHandler(ConstraintViolationException.class)
2332
public ResponseEntity<Object> validation(ConstraintViolationException e, WebRequest request) {
2433
return handleExceptionInternal(e, Code.VALIDATION_ERROR, request);
2534
}
26-
2735
/** 사용자 정의 예외 실패 처리
2836
*/
2937
@org.springframework.web.bind.annotation.ExceptionHandler

0 commit comments

Comments
 (0)