목록Spring/Security (17)
코드 그라데이션
build.gradle plugins { id 'java' id 'org.springframework.boot' version '3.1.0' id 'io.spring.dependency-management' version '1.1.0' } group = 'inflearn' version = '0.0.1-SNAPSHOT' sourceCompatibility = '17' configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implem..
build.gradle과 gradle-wrapper.properties는 앞쪽에 있으므로 우선 생략 자카르타로 바뀜 cf. 3.0.5 버전으로 업그레이드 하려면 그냥 버전만 업그레이드 해주면 된다(시큐리티 설정 안 건드려도 되나봄) Config CorsConfig package inflearn.freejwt.config; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.cors.CorsConfiguration; import org.springframework.web.cors.UrlBasedCorsC..
3.01로 업데이트 하기 위한 작업 *** 자바 버전을 반드시 17 이상으로 해야 한다! build.gradle plugins { id 'java' // 두 개 수정 id 'org.springframework.boot' version '3.0.1' id 'io.spring.dependency-management' version '1.1.0' } group = 'inflearn' version = '0.0.1-SNAPSHOT' sourceCompatibility = '17' // 수정 configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementat..
RestResponseEntityException package inflearn.freejwt.handler; import inflearn.freejwt.dto.ErrorDto; import inflearn.freejwt.exception.DuplicateMemberException; import org.springframework.http.HttpStatus; import org.springframework.web.bind.annotation.ControllerAdvice; import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.ResponseBody; imp..
Config CorsConfig @Configuration public class CorsConfig { // CORS 필터 빈을 정의하는 메서드 @Bean public CorsFilter corsFilter() { // URL 기반의 CORS 구성을 관리하는 객체 생성 UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); // CORS 구성 설정 객체 생성 CorsConfiguration config = new CorsConfiguration(); // 요청에서 자격 증명(자격 증명 쿠키, 인증 등)을 허용 config.setAllowCredentials(true); // 모든 출처(Origin)를 허용 confi..
Controller UserController @RequiredArgsConstructor @RestController @RequestMapping("/api") public class UserController { private final UserService userService; /** * 사용자 등록을 처리하는 엔드포인트. * * @param userDto 등록할 사용자 정보를 포함한 UserDto 객체 * @return ResponseEntity 등록된 사용자 정보를 포함한 ResponseEntity */ // 여기 변경 @PostMapping("/signup") public ResponseEntity signup(@Valid @RequestBody UserDto userDto) { return..
DTO ErrorDto package inflearn.freejwt.dto; import org.springframework.validation.FieldError; import java.util.ArrayList; import java.util.List; // ErrorDTO 클래스는 API 또는 웹 애플리케이션에서 예외 또는 오류 정보를 표현하는 데 사용됩니다. public class ErrorDto { // 상태 코드를 나타내는 변수. HTTP 상태 코드와 관련이 있으며, 클라이언트에게 반환됨. private final int status; // 클라이언트에게 오류의 원인을 설명하는 데 사용. private final String message; // 필드 오류(FieldError) 객체들을 저장하..
MethodArgumentNotValidExceptionHandler package inflearn.freejwt.handler; import org.springframework.core.Ordered; import org.springframework.core.annotation.Order; import org.springframework.http.HttpStatus; import org.springframework.validation.BindingResult; import org.springframework.validation.FieldError; import org.springframework.web.bind.MethodArgumentNotValidException; import org.springf..