반응형
RestTemplate HTTP 통신을 간편하게 처리할 수 있는 클래스 RESTful 웹 서비스와 통신하기 위해 사용되며, 간단한 API 호출부터 복잡한 요청과 응답까지 처리할 수 있음 RestTemplate의 기능 HTTP 요청 보내기 : RestTemplate을 사용하여 GET, POST, PUT, DELETE 등의 다양한 HTTP 메서드를 사용하여 서버에 요청을 보낼 수 있다. HTTP 응답 받기 : RestTemplate을 사용하여 서버로부터 받은 HTTP 응답을 처리할 수 있습니다. JSON, XML 등의 응답 데이터를 Java 객체로 변환하는 기능을 제공 HTTP 요청 파라미터와 헤더 설정: RestTemplate을 사용하여 요청에 필요한 파라미터와 헤더를 설정할 수 있다. 에러 핸들링: Re..
JWT(Json Web Token) 웹 기반 환경에서 정보를 안전하게 전송하기 위해 설계된 토큰 기반 인증 방식 클라이언트와 서버 간에 JSON 객체로 정보를 안전하게 전달 할 수 있도록 고완된 토큰이다 토큰 자체에 필요한 정보(토큰 만료시간, 유저 정보 등)를 모두 가지고 있어 별도의 데이터 베이스나 세션 상태를 유지할 필요가 없다(State less의 특징을 살릴 수 있다) JWT Token의 구조 Header : 토큰의 타입과 서명 알고리즘의 정보를 가지고 있음 { "alg": "HS256", "typ": "JWT" } Payload : 토큰에 담을 Claim들이 포함될 부분 Claim : 토큰에 담길 정보를 의미함, 사용자에 대한 정보, 권한, 토큰 유효 시간 등 { "sub": "user123"..
빌더 패턴 객체의 생성을 가독성 있게 만들고, 여러 개의 매개변수를 갖는 생성자를 피하며, 선택적인 매개변수를 다루기 위해 사용되는 디자인 패턴 사용하는 이유 일반적으로 매개변수를 가진 생성자를 이용하기 위해서 매개변수의 순서를 기억하고 전달해야하는 불편함이 존재했음, 일부 매개변수가 선택적이여서 오버로드된 생성자를 많이 사용해야하는 문제가 있었음 매개변수 순서 기억할 필요없음, 선택적인 필드들을 다루기 쉬움, 가독성과 유지보수성 향상, 불변성 유지 가능 단점? 빌더 클래스를 따로 작성해야한다는 단점이 존재함 빌더 패턴 사용법 빌더 클래스 정의 생성하고자 하는 객체의 필드들을 멤버 변수로 가지는 빌더 클래스를 정의 빌더 메서드 정의 빌더 클래스는 필드들을 설정하는 메서들들을 구현 메서드들은 빌더 객체 자..
HttpServletRequset : HTTP 요청에 대한 정보는 담고 있는 객체 HttpServletRequset는 Spring 프레임워크에서 제공하는 인터페이스이다 사용하는 이유 : 클라이언트로 부터 요청된 정보를 추출하기 위해서 HTTP 요청에 대한 다양한 정보(헤더, 파라미터, 세션 등등 )를 추출하여 사용한다. HTTP 요청에 대한 모든 정보에 접근할 수 있음 @RequestBody Spring 프레임워크에서 제공하는 어노테이션으로 HTTP요청의 본문(Body)에 담겨있는 데이터를 *자바 객체로 매핑 * 하는데 사용한다 주로 POST, PUT, PATCH 같은 메서드로 데이터를 전송할 때 사용 클라이언트가 JSON,XML, 폼 데이터로 전송할 때 주로 자바 객체로 변환하여 컨트롤러 메서드의 매개..