🐰 인증과 인가 인증(Authentication) 인가(Authorization)
🐾 인증/인가 HTTP통신 쿠키 세션 토큰 정리\[Spring] 쿠키/세션/토큰세션출처: 그랩의 블로그 (https://tansfil.tistory.com/58)사용자가 서버에 웹페이지를 요청할 때, 쿠키 정보를 함께 보낸다.서버는 사용자가 전달한 쿠키에 세
🐾 \[Spring] 쿠키/세션/토큰(용어)개발자 도구에서 Application - Storage - Cookies 에 도메인 별로 저장되어 있는게 확인구성요소Name (이름): 쿠키를 구별하는 데 사용되는 키 (중복될 수 없음)Value (값): 쿠키의 값Domai
JWT 장/단점 장점 동시 접속자가 많을 때 서버 측 부하 낮춤 클라이언트, 서버가 다른 도메인을 사용할 때 ex) 카카오 OAuth2 로그인 시 JWT Token 사용 단점 구현의 복잡도 증가 JWT에 담는 내용이 커질 수록 네트워크 비용 증가
Web 애플리케이션에서 관리되는 영역으로 Client로 부터 오는 요청과 응답에 대해 최초/최종 단계의 위치이며 이를 통해 요청과 응답의 정보를 변경하거나 부가적인 기능을 추가할 수 있다.요청에 대한 인증, 권한 체크 등을 하는데에 쓰인다.구체적으로 들어온 요청이 Di
Spring 기반 애플리케이션의 보안을 담당하는 스프링 하위 프레임워크이다.인증과 권한에 대한 부분은 filter의 흐름에 따라 처리하고 있다.많은 보안 관련 옵션들을 제공해주어 개발자가 보안 로직을 하나씩 작성하지 않아도 되는 장점이 있다.Spring Security
Spring에서 모든 호출은 DispatcherServlet을 통과하게 되고 이후에 각 요청을 담당하는 Comtroller로 분배된다.이 때, 각 요청에 대해서 공통적으로 처리해야할 필요가 있을 때 DispatcherServlet 이전에 단계가 필요하며 그것이 Filt
어떤 데이터 (주로 사용자 또는 다른 서버의 request)의 값이 유효한지, 잘못된 내용이 있는지 확인하는 단계를 뜻한다.🐾 예를들어 이메일 주소의 양식은 "email@email.com"의 양식어어야 하는데, 이 양식과 일치하지 않는 값이 들어온다면 해당 값의 저장
🐰 1 대 1 관계 🐾 일대일 관계는 그 반대도 일대일이다. 🐾 주 테이블이나 대상 테이블 중에 외래 키를 넣을 테이블을 선택 가능하다. 🐾 외래 키에 데이터베이스 유니크 제약조건이 추가되어야 일대일 관계가 된다. @OneToOne 1 대 1 관계를 맺어
1 대 N 관계를 맺어주는 역할을 한다.음식 Entity와 고객 Entity가 1 대 N 관계라 가정하여 관계를 설명하려고 한다.🐾 1 : N에서 N 관계의 테이블이 외래 키를 가질 수 있기 때문에 외래 키는 N 관계인 users 테이블에 외래 키 컬럼을 만들어 추가
🐾 반대에서 단방향 매핑을 한다고 해서 DB 테이블에 영향을 전혀 주지 않는다.🐾 다대일관계의 다 쪽에서 이미 연관관계의 주인이 되어서 외래키를 관리하고 있다.N 대 1 관계를 맺어주는 역할음식 Entity와 고객 Entity가 N 대 1 관계라 가정하여 관계를 설
🐰 RestTemplate > Spring에서 지원하는 객체로 간편하게 Rest 방식 API를 호출할 수 있는 Spring 내장 클래스이다. 🐾 Rest API 서비스를 요청 후 응답받을 수 있도록 설계되어 있으며 HTTP 프로토콜의 메소드 (ex.GET, POS
Tranactional 어노테이션과 롤백
클래스에 적용되며, 해당 클래스를 Spring의 설정 파일로 지정한다.개발자가 작성한 설정 클래스에서 Configuration 어노테이션을 적용하여 Spring에게 해당 클래스가 설정 파일임을 알린다.설정 파일은 Bean 어노테이션이 적용된 메서드를 포함하고, 빈의 생
PathVariable 어노테이션은 URL 경로에서 변수 값을 추출하는 데 사용된다.주로 RESTful 웹 서비스에서 사용자가 전달한 결로의 일부를 동적으로 추출하는데 사용된다.메서드의 매개변수 앞에 @PathVariable 어노테이션을 사용하여 경로 변수와 매핑한다.
findAll()DB에서 전체 값을 list로 불러올때 사용한다.findOne() primary key로 값을 1건 조회findByxx() xx 에 Entity의 이름 붙이기Entity의 이름의 첫글자는 대문자로 한다.ex) id를 조건으로 검색한다면 findById(
🐰 JDBC > Java Database Connectivity Java 앱과 DB를 연결시켜주기 위해 만들어진 기술 JPA도 이 기술을 사용하여 구현되어 있다. DB 탄생 후 Java 앱과 연동을 위해 JDBC 가 탄생했다. JDBC Driver 는 여러타입의
Aspect Oriented Programming🐾 프로그램 구조에 대한 또 다른 사고 방식을 제공하여 객체 지향 프로그래밍(OOP)을 보완🐾 OOP에서 모듈화의 핵심 단위는 클래스인 반면, AOP에서 모듈화의 단위는 관점이다.Spring의 핵심 구성요소 중 하나는
데이터베이스 스키마를 자동으로 생성, 수정 또는 삭제하는 기능create : 기존테이블 삭제 후 다시 생성 (DROP + CREATE)create-drop: create : create와 같으나 종료 시점에 테이블 DROPupdate : 변경분만 반영 (운영DB 에서는
@Retention : 컴파일러가 어노테이션을 다루는 방법을 기술, 어느 시점까지 영향을 미치는지를 결정RetentionPolicy.SOURCE : 컴파일 전까지만 유효RetentionPolicy.CLASS : 컴파일러가 클래스를 참조할 때까지 유효RetentionPo