-
2021.07.10~13 기록장TIL 2021. 7. 9. 21:42
ToDo
- 알고리즘..
- 책 읽기
- 블로그 읽기
Done
- 토비 스프링 코딩
- 책 읽기
Weekly goal
- 책 읽기
- 토비 스프링 코딩
Feeling
토비의 스프링.
224p.
전략 패턴이란 변하는 부분과 변하지 않는 부분을 분리하는 것이다.
변하는 부분을 전략이라고 볼 수 있다.
228p.
로컬 클래스에서 외부의 인스턴스를 사용할 때 final을 붙여 변경을 방지해야 한다.
이는 순수 함수와 비슷한 것 같다.
240p.
UserDao는 jdbcContext를 수동 DI 받고 있다. (bean 아니기에. 근데 ConnectMaker가 bean이라 bean이 되어야 함).
userDao가 인스턴스가 아닌 구체적인 클래스를 DI 받고 있는데 이는 DI의 근본적인 원칙에 부합하지 않는 클래스가 노출이 되는 것이다. 장점은 의존관계를 쉽게 볼 수 있다는 것.
다르게 풀려면 UserDao가 직접 생성해서 ConnectMaker를 DI 하는 방법이 있겠다.
둘 다 장단점이 있으니 상황에 맞춰 쓰도록. 근데 나는 Bean으로 등록해서 하는 것이 더 좋아 보인다. Dao 클래스마다 Context를 만들 필요 없고 눈에 딱 보이는 의존성이 좋아 보인다.
면접 질문 중
@Id값의 타입이 Long인 이유를 물으셨는데
Long은 Wrapper 타입으로 null을 넣을 수 있다. long으로 하게 되면 0이 초기화 값이기에 값을 안 넣었을 때 실제 값으로 할당될 수 있다.
왜 Long을 사용했나? Integer면 안되나?
우리의 서비스가 23억을 넘을 일이 있을까? 하나 Long을 사용하면 Integer보다 더 많은 공간을 사용하게 된다.
DB에서는 Bigint와 int로 사용되는데 4바이트와 8바이트 사이의 성능 차이가 얼마나 날까? 밑의 블로그 글에 의하면 10% 정도 차이가 난다고 한다.
http://ronaldbradford.com/blog/bigint-v-int-is-there-a-big-deal-2008-07-18/
BIGINT v INT. Is there a big deal?
ronaldbradford.com
MySQL id컬럼 데이터타입 INT? BIGINT? – 괴발개발 개발일기
최신 버전의 Laravel 프레임워크와 WordPress 프레임워크를 설치하고 database를 생성하면 users(WordPress에서는 ‘{$table_prefix}users’)테이블이 설치가 된다. 그리고 users테이블의 id컬럼은 데이터형datatype
dogleg.co.kr
jwt의 장단점
인증을 처리하는데 사용되는 토큰
장점은 서버리스를 말할 수 있다. 이를 통해 다중 분산에 유리하다.
단점은 페이로드에 많은 정보를 담게 되면 네트워크 부담이 증가된다는 것과
탈취되었을 때 어찌 할 것인가.
로그아웃 또한 서버에서 통제할 수 없다.
https://yceffort.kr/2021/05/drawback-of-jwt
Home
yceffort
yceffort.kr
https://owasp.org/www-chapter-vancouver/assets/presentations/2020-01_Attacking_and_Securing_JWT.pdf
https://victorydntmd.tistory.com/115
[HTTP/인증] JWT (JSON Web Token)
1. 사용자 인증의 여러 방식들 1) 쿠키와 세션 HTTP는 Stateless , Connectionless 특징이 있기 때문에, 사용자 인증을 유지할 수 있는 기능이 필요했습니다. 그래서 클라이언트가 로그인 등으로 한 번 사
victorydntmd.tistory.com
'TIL' 카테고리의 다른 글
2021.07.15 기록장 (0) 2021.07.14 2021.07.14 기록장 (0) 2021.07.13 2021.07.01~ 09기록장 (0) 2021.06.30 2021.06.29 ~ 30 기록장 (0) 2021.06.28 2021.06.27~28 기록장 (0) 2021.06.26