원티드 인턴쉽에 참가를 하기위해 사전과제를 시작하기로 했습니다. java/spring관련 프로젝트가 기초적인 수준에 머물렀다고 생각해서 기업형 PBL 과제를 통해 실무적인 지식을 조금 더 쌓고 싶은 것이 이유였습니다. 원티드 BE 인턴십"백만 사용자"라는 워딩이 극적
Swagger란 개발한 Rest API를 편리하게 문서화 해주고, 이를 통해서 관리 및 제 3의 사용자가 편리하게 API를 호출해보고 테스트 할 수 있는 프로젝트입니다.Spring Boot에서는 간단하게 springfox-boot-starter 를 gradle depe
프로젝트를 진행하며 디렉터리 구조를 어떻게 설계해야 할지 고민하신 경험이 있으실겁니다. 기존의 계층형 디렉터리 구조에서 나타났던 문제와 그를 개선한 도메인형 디렉터리 구조를 소개하려 합니다.기존의 계층형 디렉터리 구조는스프링 웹 계층의 대표 클래스 혹은 디렉터리들을 기
모든 작업들이 성공적으로 완료되어야 작업 묶음의 결과를 적용하고, 어떤 작업에서 오류가 발생했을 때는 이전에 있던 모든 작업들이 성공적이었더라도 없었던 일처럼 완전히 되돌리는 것이 트랜잭션의 개념입니다.데이터베이스를 다룰 때 트랜잭션을 적용하면 데이터 추가, 갱신, 삭
웹 사이트를 이용하며 게시판을 둘러볼 때, 게시글 목록 하단에 게시글을 일정 수로 나누어 페이지화 시켜놓은걸 볼 수 있는데 이를 Pagination(페이지네이션) 이라고 합니다.💡 직접 구현해본 pagination 예제직관적으로 게시글을 검색할 수 있기 때문에 커뮤니
회원 가입 기능을 만들경우 절대 입력한 문자열을 그대로 DB에 저장하면 안된다. 보안에 매우 취약하기 때문이다. 그렇기때문에 패스워드를 해싱 하여 저장해야하는데 BCrypt(https://docs.spring.io/spring-security/reference
OAuth 2.0(Open Authorization 2.0, OAuth2)은 인증을 위한 개방형 표준 프로토콜입니다. 이 프로토콜에서는 Third-Party 프로그램에게 리소스 소유자를 대신하여 리소스 서버에서 제공하는 자원에 대한 접근 권한을 위임하는 방식을 제공합니
JWT는 쿠키, 세션이 가진 고질적인 문제를 해결하기 위해 사용되는 기술입니다. HTTP는 기본적으로 contactless, stateless를 지향한다.HTTP는 contactless(클라이언트의 요청이 처리되면 연결이 끊어짐), stateless(서버가 클라이언
웹 개발에서 사용되는 JWT(JSON Web Token)는 정보를 안전하게 전달하고 인증을 처리하는 강력한 방식입니다. 이 글에서는 JWT의 핵심인 RFC7519에 대해 쉽게 이해할 수 있는 내용으로 알아보겠습니다.RFC7519는 JWT의 표준 스펙을 정의한 문서입니다