목록전체 글 (42)
Develog

학습 목표 Spring Security를 사용하는 이유를 설명할 수 있다. Spring Security 환경 구성에 대해 배우고 구현할 수 있다. Spring Security 인증(Authentication) 구성요소에 대해 이해할 수 있다. Spring Security 인가(Authorization) 구성요소에 대해 이해할 수 있다. Spring Security란? 스프링 시큐리티(Spring Security) Spring Framework 기반의 애플리케이션의 인증(Authentication)과 인가(Authorization or 권한 부여) 기능을 가진 프레임워크이다. 스프링 기반의 애플리케이션에서 보안을 위한 표준이라고 보고 있다. 모든 자바 애플리케이션에 적용 가능하지만 웹 애플리케이션에서 많이..

학습목표 암호화와 hashing, salting 등의 개념을 이해할 수 있다. HTTP와 HTTPS의 차이점을 이해할 수 있다. 권한 부여(Authorization)와 인증(Authentication)에 대해 이해할 수 있다. 쿠키의 작동 원리를 이해할 수 있다. 클라이언트, 서버, 데이터베이스의 전체 동작을 이해할 수 있다. 서비스의 보안과 관련된 방법을 알아보고 원리 및 장점 및 단점을 이해할 수 있다. HTTPS는 Hyper Text Transfer Protocol Secure Socket layer 의 약자이다. HTTP over SSL(TLS), HTTP over Secure라고 부르기도 한다. HTTPS는 HTTP 요청을 SSL 혹은 TLS라는 알고리즘을 이용해, HTTP 통신을 하는 과정에서..

학습 목표 Gradle 기반의 애플리케이션 실행 파일을 빌드 할 수 있다. 빌드로 생성된 애플리케이션 실행 파일을 로컬 PC에서 실행할 수 있다. 애플리케이션 빌드 시, 프로파일(Profile)을 적용할 수 있다. Spring Boot 기반 애플리케이션의 기본적인 배포 방법을 이해할 수 있다. 우리가 지금까지 만든 애플리케이션은 IntelliJ IDE 안에서만 실행 시켜보았다. 실제 외부의 클라이언트가 우리가 만든 애플리케이션의 API를 사용할 수 있으려면 애플리케이션의 빌드 과정을 거친 후에 생성되는 실행 파일을 서버에 배포해야 한다. [기본] 애플리케이션 빌드/실행/배포 애플리케이션 빌드 우리는 지금까지 IntelliJ IDE의 도움을 받아 샘플 애플리케이션을 실행시켰다. 그런데 우리가 만든 애플리케..

Controller 테스트 케이스에 Spring RestDocs 적용하기 API 문서 생성을 위한 슬라이스 테스트 케이스 작성 ✔ API 문서 생성을 위한 테스트 케이스 기본 구조 @WebMvcTest(MemberController.class) // (1) @MockBean(JpaMetamodelMappingContext.class) // (2) @AutoConfigureRestDocs // (3) public class MemberControllerRestDocsTest { @Autowired private MockMvc mockMvc; // (4) @MockBean // (5) 테스트 대상 Controller 클래스가 의존하는 객체를 Mock Bean 객체로 주입 받기 @Test public void..

학습 목표 API 문서화가 무엇인지 이해 할 수 있다. API 문서화가 왜 필요한지 이해할 수 있다. Spring Rest Docs의 사용법을 이해할 수 있다. Spring Rest Docs와 Swagger의 차이점을 이해할 수 있다. Spring Rest Docs를 이용해서 API를 문서화 할 수 있다. 문서화 된 API를 외부 사용자에게 제공할 수 있다. API 문서화란? API 문서화란 클라이언트가 REST API 백엔드 애플리케이션에 요청을 전송하기 위해서 알아야 되는 요청 정보(요청 URL(또는 URI), request body, query parameter 등)를 문서로 잘 정리하는 것을 의미한다. 이처럼 API 요청을 위해 필요한 정보들을 문서로 잘 정리해야 하는 이유는? 우리가 만들어 놓은..

학습 목표 Mock의 의미를 이해할 수 있다. Mockito의 기본 사용법을 이해할 수 있다. 비즈니스 로직의 단위 테스트에 Mockito를 적용할 수 있다. Controller의 슬라이스 테스트에 Mockito를 적용할 수 있다. TDD(Test Driver Development)의 개념을 이해할 수 있다. Mock이란? 목업(Mock-up)은 실제 제품이 나오기 전에 내부적으로 사용하기 위한 모형 제품을 의미한다. ✔ 테스트 세계에서의 Mock 테스트 세계에서의 Mock은 바로 가짜 객체를 의미한다. 그리고 단위 테스트나 슬라이스 테스트 등에 Mock 객체를 사용하는 것을 바로 Mocking이라고 한다. 테스트에서 Mock 객체를 사용하는 이유 우리가 그냥 테스트를 진행하게 되면 서비스 계층을 거쳐서..