본문 바로가기

k-digital training76

[TIL] 2022-12-27(42day) Project MySelectShop - Security 👉 Security에서 JWT를 사용한 인증/인가의 흐름 사용자는 회원가입을 진행한다. 해당 URI 요청은 permitAll 처리하고 사용자의 입력값으로 service에서 회원가입을 진행한다. 사용자의 정보를 저장할 때 비밀번호를 암호화하여 저장한다. PasswordEncoder를 사용하여 비밀번호를 암호화 한 후 저장한다. 사용자는 로그인을 진행한다. 해당 URI 요청은 permitAll 처리하고 사용자의 입력값으로 service에서 회원 인증을 진행한다. (비밀번호 일치여부 등) 사용자 인증을 성공하면 사용자의 정보를 사용하여 JWT 토큰을 생성하고 Header에 추가하여 반환한다. Client 는 이를 쿠키저장소에 저장한다. 사용자는 게시글 .. 2022. 12. 28.
[TIL] 2022-12-26(41day) Spring Security 👉 Spring Security 란? # 개념 - Spring Security' 프레임워크는 스프링 서버에 필요한 인증 및 인가를 위해 많은 기능을 제공해 줌으로써 개발의 수고를 덜어준다. # 스프링 시큐리티 적용하는 방법 - '스프링 시큐리티' 프레임워크 추가 // 스프링 시큐리티 implementation 'org.springframework.boot:spring-boot-starter-security' - '스프링 시큐리티' 활성화 하기 WebSecurityConfig (springboot 2.7이상) package com.sparta.springsecurity.config; import org.springframework.context.annotation.Bean; i.. 2022. 12. 27.
[TIL] 2022-12-23(40day) JPA 연관관계 👉 연관관계 Aa 관계 코드 선언 Entity 예 다대일(N:1) @OneToMany Order(1) : Food(N) 배달 주문 1개에 음식 여러개 선택 가능 다대일(N:1) @ManyToOne Owner(N) : Restraunt(1) 음식점 주인 여러명이 하나의 음식점을 소유 가능 일대일(1:1) @OneToOne Order(1) : Coupon(1) 배달 주문 1개 주문 시, 쿠폰 1개만 할인 적용 가능 다대다(N:N) @ManyToMany User(N) : Restraunt(N) 고객은 음식점 여러개 찜 가능 음식점은 고객 여러명에서 찜 가능 # Member Entity @Getter @Entity @NoArgsConstructor public class Member { @Id .. 2022. 12. 26.
[WIL] 2022-12-24(8th week) 😃 Keep - 스프링 강의내용 반복학습 😅 Problem - 연관관계 부분이 잘 이해가 되지 않아 DB 다루기가 좀 어려웠다. 💪 Try - 스프링 심화과정 1차 과제 만들어놓기. - 시큐리티 내용 학습하기. - JPA 관련 내용 다시한번 정리하기 🙋‍♂️ feel - 강의들을 반복해서 들으니 안들렸던 부분이 들리고, 안보였던 부분이 보이기 시작하니 잠깐이지만 재미를 느꼈다 ㅎㅎ 2022. 12. 25.
[TIL] 2022-12-22(39day) @Transactional 어노테이션 👉 @Transactional - 데이터베이스의 상태를 변경하는 작업 또는 한번에 수행되어야 하는 연산들을 의미. - begin, commit 을 자동으로 수행. - 예외 발생 시 rollback 처리를 자동으로 수행. 👉 @Transactional 성질 # 원자성(Atomicity) 한 트랜잭션 내에서 실행한 작업들은 하나의 단위로 처리한다. 즉, 모두 성공 또는 모두 실패. # 일관성(Consistency) 트랜잭션은 일관성 있는 데이타베이스 상태를 유지한다. (data integrity 만족 등.) # 격리성(Isolation) 동시에 실행되는 트랜잭션들이 서로 영향을 미치지 않도록 격리해야한다. # 영속성(Durability) 트랜잭션을 성공적으로 마치면 결과.. 2022. 12. 22.
[TIL] 2022-12-21(38day) JPA 연관관계 매핑 👉 연관관계 매핑이란? - 객체의 참조와 테이블의 외래 키를 매핑하는 것을 의미 - JPA에서는 연관 관계에 있는 상대 테이블의 PK를 멤버 변수로 갖지 않고, 엔티티 객체 자체를 통째로 참조 👉 연관관계를 이해하기 위한 3가지 키워드 1. 방향 - 단방향 관계 : 두 Entity가 관계를 맺을 때, 한쪽의 Entity만 참조 - 양방향 관계 : 두 Entity가 관계를 맺을 때, 양 쪽이 서로 참조 2. 다중성 @ManyToOne : 다대일 ( N : 1 ) ex) Member는 여러 구성원이 하나의 Team을 갖고 있으므로 Member 입장에서는 Team과 다대일 관계 @OneToMany : 일대다 ( 1 : N ) ex) Team은 여러 Member를 구성원으로 갖고 있으므로 .. 2022. 12. 21.