본문 바로가기

프로그래머스4

💡 JWT(JSON Web Token) 이란? JWT(JSON Web Token) 당사자 간에 정보를 JSON 형태로 안전하게 전송하기 위한 토큰 인증에 필요한 정보들을 암호화시킨 JSON 토큰을 의미 URL로 이용할 수 있는 문자열로만 구성 → HTTP 구성요소 어디든 위치할 수 있음 디지털 서명이 적용돼 있어 신뢰할 수 있음 서버와의 통신에서 권한 인가를 위해 사용 JWT 기반 인증은 JWT 토큰(Access Token)을 HTTP 헤더에 실어 서버가 클라이언트를 식별하는 방식 🌈 JWT 구조 JWT는 점(’.’)으로 구분된 아래의 세 부분으로 구성됨 헤더(Header) 검증과 관련된 내용을 담고 있음 완성된 헤더는 Base64Url 형식으로 인코딩 되어 사용됨 속성 alg : 해싱 알고리즘 지정 SHA256, RSA을 주로 사용하며, 토큰을 검.. 2022. 12. 9.
[Lombok] RequiredArgsConstructor 어노테이션이란? @RequiredArgsConstructor Spring 사용 시 final 로 DI(의존성주입)를 할 때 필요한 객체를 선언하여 생성자를 만들어주어야 함 이때, 생성자 코드를 직접 작성하는 것이 아니라 @RequiredArgsConstructor 어노테이션을 사용하여 자동으로 설정 👀 실습코드 👉 @RequiredArgsConstructor 사용 전 (생성자 추가 필요) 1 2 3 4 5 6 7 8 9 10 11 @RestController @RequestMapping("/api/v1/reviews") @Slf4j public class ReviewController { private final ReviewService reviewService; public ReviewController(ReviewS.. 2022. 12. 6.
[DataBase] ORM 이란? 애플리케이션은 데이터(리소스)를 주고받는 것이 주 목적이다. 정상적으로 로직이 동작하기 위해서는 '데이터베이스'가 꼭 필요하다. SpringBoot에서 데이터베이스와 매핑할 때 사용하는 ORM에 대해 공부해보자! 📌ORM 이란? Object Relational Mapping : 객체 관계 매핑 java 에서의 객체는 class ↔ RDB(Relational Database)의 테이블 👉 자동으로 매핑하는 방법 class와 DB의 테이블과는 매핑을 위해 만들어진 것이 아니기 때문에 어쩔 수 없는 불일치가 존재 👉 ORM은 이러한 둘의 제약사항을 해결하는 역할을 함 ORM을 이용하면 쿼리문을 작성하지 않고 코드(메서드)만으로 데이터를 조작할 수 있음 ORM의 장점 쿼리문을 작성하는 양이 줄어 개발 비용이 줄.. 2022. 12. 3.
🐳도커(Docker)란? 도커는 컨테이너 기술을 기반으로 하는 일종의 가상화 플랫폼이다. 리눅스 컨테이너에 여러 기능을 추가함으로써 애플리케이션을 컨테이너로서 좀 더 쉽게 사용할 수 있게 만들어진 오픈 프로젝트 / 기존에 쓰이던 가상화 방법인 가상 머신(VirturalBox, VMware 등) 보다 성능의 손실이 훨 씬 덜하다. 📚 가상화 vs 컨테이너 가상 머신(VirturalBox, VMware 등) 하나의 하드웨어에 여러 개의 가상 머신으로 분할해 효율적으로 사용할 수 있는 기술 분할 된 가상 머신들은 각각 독립적인 환경으로 구동됨 기존 환경( Host OS ) 분할 된 각각의 환경( Guest OS ) Guest OS는 하이퍼바이저에 의해 생성되고 관리됨 → 항상 하이퍼바이저를 거쳐야함 속도 저하, 가상 머신 배포 시 이.. 2022. 11. 22.