Spring Security와 JWT를 활용해서 회원 인증 기능을 구현하기 위해 여러 코드들을 보고 공부하던 중에 GenericFilter를 이용해 필터를 구현한 코드와 OncePerRequestFilter를 이용한 코드가 있어서 서로 어떤 차이가 있는지 궁금해서 찾아보았다. 개요 GenericFilter와 OncePerRequestFilter는 둘 다 대상을 필터로 등록해주는 인터페이스이다. public class JwtFilter extends GenericFilterBean { @Override public void doFilter(final ServletRequest request, final ServletResponse response, final FilterChain chain) throws ..
Lombok은 어노테이션을 이용해서 컴파일 시점에 자동으로 코드를 추가할 수 있는 라이브러리이다. 반복해서 작성해야 하는 코드를 알아서 생성해주기 때문에 생산성이 늘어나고 코드 가독성 또한 좋아진다. 처음 스프링부트를 접하고부터 롬복을 사용하였는데 당연히 써야되는 것처럼 사용했고 롬복이 제공하는 기능들이 당연한 것처럼 여겨졌다. 그러나 여러 자료들을 접하다 @Data 는 엔티티에서 사용하면 안 된다거나 @Setter 사용을 지양해야 한다거나 하는 얘기들을 들을 수 있었고 우아한테크코스 팀들의 프로젝트 코드를 보면 실제로 롬복을 최소화해서 사용하는 것을 볼 수 있었다. 그래서 롬복의 어떤 기능을, 어느정도까지 사용하는 것이 안전한지 조금 알아보았다. @Data @Data는 @ToString, @Equals..
keyword : Security class : CS CORS란? 위의 그림의 CORS policy 오류 메시지는 CORS 정책을 위반할 때 발생하게 됩니다. CORS는 Cross-Origin Resource Sharing의 약자입니다. 교차 출처 리소스 공유로 번역될 수 있는데, 브라우저에서 다른 출처의 리소스를 공유하는 방법입니다. URL 구조 다른 출처의 출처가 무엇인지 살펴봐야 하는데, 출처가 무엇인지 알기 위해서 먼저 URL의 구조를 살펴보아야 합니다. URL 구조는 아래 그림과 같습니다. 프로토콜의 HTTP는 80번, HTTPS는 443번 포트를 사용하는데, 80번과 443번 포트는 생략이 가능합니다. 출처(Origin)란? 출처(Origin)란 URL 구조에서 살펴본 Protocal, Hos..
# Today I Learned 💡 스프링 심화강의에서 역할을 따로 나누지 않고 컨트롤러에 모든 코드를 몰아넣은AllInOneController와 Controller, Service, Repository로 역할을 나눈 코드를 비교해보았다. 일단 AllInOneController 코드를 읽기 어려울뿐아니라 읽고 싶은 생각조차 들지 않았고 역할과 기능이 눈에 들어오지 않았다 💡 우선 하나의 기능을 이해하려면 모든 코드를 다 보고 파악을 해야 한다는 점과 수정을 하거나 오류를 파악하려고 할 때도 위아래로 훑어가며 해야했기에 시간도 많이 걸리고 실수도 많이 나올 것 같았다. 마치, 어떤 기관에 문의를 하려는데 업무분장이 잘 되어있어서 누가봐도 명확하게 A라는 사람이 맡은 업무구나 라는 걸 알 수 있는 것과, 도..
- Total
- Today
- Yesterday
- 자바
- 스프링부트
- 타입스크립트
- 이분탐색
- 알고리즘
- JavaScript
- BFS
- 프로그래머스
- java
- 자바스크립트
- 해시맵
- DP
- 스프링
- dfs
- 정렬
- SQL
- Nest
- 자바bfs
- 리액트
- 형변환
- CS
- Comparator
- Queue
- JPA
- SQLD
- Algorithm
- 자바dp
- 백준
- 자바트리
- Spring
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |