본문 바로가기

스파르타 강의/스프링 강의

(7)
스프링 JWT 구현-6 이제 마지막으로 이 프로젝트에서 사용된 네이버 검색 API 를 활용한 부분의 코드이다. 이 부분에 대해서는 강의의 것을 그냥 붙여 사용했다. 앞에서 빼먹은 애플리케이션 실행부 먼저... MyselectshopApplication package com.sparta.myselectshop; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.data.jpa.repository.config.EnableJpaAuditing; @SpringBootApplication @EnableJpaAuditing pu..
스프링 JWT 구현-5 이번에는 Repository 부분과 마지막이 될 Service 부분에 대한 내용이다. 정말 너무 알아야할게 많은데 머리에는 안들어온다... Repository Entity 에 의해 생성된 DB에 접근하는 메서드 들을 사용하기 위한 인터페이스 @Entity 으로 DB 구조를 만들고 여기에 CRUD 를 할 때 어떻게 할 것인지 정의해주는 계층이다. ProductRepository package com.sparta.myselectshop.repository; import com.sparta.myselectshop.entity.Product; import org.springframework.data.jpa.repository.JpaRepository; import java.util.List; import jav..
스프링 JWT 구현-4 여기서는 정말 검색을 많이해서 찾아본거 같다... 지금 이 프로젝트의 핵심 기능인 JWT 의 기능들에 대해서 설정하는 부분인데... 아래처럼 다 정리 해놓는다 하더라도 이해하기가 힘들 것 같다. JwtUtil package com.sparta.myselectshop.jwt; import com.sparta.myselectshop.entity.UserRoleEnum; import io.jsonwebtoken.*; import io.jsonwebtoken.security.Keys; import io.jsonwebtoken.security.SecurityException; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; impo..
스프링 JWT 구현-3 이번에는 Entity 부분이다. 쉽게 말해 실체, 객체 라고 생각하면 되는 부분이다. 데이터의 집합을 의미하며, 저장되고 관리되어야 하는 부분이다. Product 상품들의 정보를 다루는 부분의 엔티티 이다. package com.sparta.myselectshop.entity; import com.sparta.myselectshop.dto.ProductMypriceRequestDto; import com.sparta.myselectshop.dto.ProductRequestDto; import com.sparta.myselectshop.naver.dto.ItemDto; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; ..
스프링 JWT 구현-2 지나번 글에서는 컨트롤러에 관한 설명으로 글이 끝났고 이번에는... DTO 파트다. 계층 간의 데이터 교환 역할을 목적으로 사용되는 부분에 대한 설명이 된다. LoginRequestDto DB 에서 꺼낸 데이터를 저장하는 Entity를 통해 만들어지는 일종의 Wrapper(포장) 엔티티를 직접 클라이언트 단과 마주하는 계층에 전달하면 보안성에 위험이 있기 때문에(비밀번호 같은 중요 개인정보) 대신에 Dto 를 통해서 데이터를 교환해준다. 이 부분에서는 아래의 코드처럼 유저이름과 패스워드 만을 받아오기 위한 Dto 가 된다. package com.sparta.myselectshop.dto; import lombok.Getter; import lombok.Setter; @Setter @Getter publi..
스프링 JWT 구현-1 자바 스프링 강의 숙련 주차이다. 이번에도 엄청난 졸음과 싸워가며 강의를 들어야 했다... 강사님이 너무 졸린다.. ㅜㅠ... 나혼자 그런것도 아니고 다들 졸면서 들으시더라 ㅋㅋㅋㅋ 무튼 지난주에 했던 스프링으로 게시판 만들기에 이어서 이번에는 JWT 토큰 개념을 다루며, 예전에는 어떤식으로 MVC 를 구현했는지, 좀 더 파고드는 JPA 부분 등 이번에도 상당히 많은 양의 정보였다... 이 글에서는 마지막 강의 이전인 JWT 부분만을 다룬다. 우선은 과제에서 필요한 부분에 JWT 강의 부분이라서 이 부분만을 파고들어서 해석해보자. 시작 전 설정 스프링을 생성할 때 추가해야할 라이브러리들이 있다. 현재 내가 추가해서 사용중인 녀석들은... Thymeleaf Lombok H2 Database MySQL Dr..
JPA 심화 새로운 조원들과 시작한 4주차 스프링 숙련 주차입니다. 이번에도 저번의 강사님의 새로운 강의로 시작 ~ 입문 주차의 복습 입문 주차동안 JPA에 대해 간단하게 사용법에 대해 알아봤다. 이 주차에서는 JPA 구현 원리와 내부 동작을 더 살펴보고, 더 복잡한 상황을 다루기 위한 관련 내용의 학습을 한다. 내부 동작이나 구현 원리까지 알아야 하는 이유가 뭘까 ? 라이브러리, 프레임워크를 잘 배우려면 이게 왜 우리를 편하게 해주는지 에 대해서 고민하면 좋다. 잘 사용하기 위해서는 어떻게 우리를 편하게 해주는지에 대한 생각을 하는것이 좋다. 이번에 제공되는 강의에 대해서는 전부 다 알고 이해하는것이 좋다고 한다(흐음...?) 다만 한번에 다 이해하려 하지 말고 나중에 다시 보게 되면 그 때 도움이 될 수 있는 수..