Sparta 99

23.2.12

개인적인 사정으로 주말에 정신이 하나도 없었다. 일단 화요일 수술 끝내고 경과를 지켜보고 정신을 차려야겠다. 승튜 조언: 닉네임 : 패턴같은걸로 엔티티에서 제한 걸수있다.(pattern.matchesP request, entity 둘 다 패턴 강제 해야한다. radis 용어 제대로 알고 써야한다. 똑같이 인메모리 디비이다. 클러스터모드, 레플리카 두가지 있다. 페일오버 간트차트 : SI 에서 쓴다 서비스업은 지양 ,,,칸반보드 쓴다,,,! 토큰을 안 쓴다 -> 쿠키 세션으로,,,, 어떻게 하면 서버 100대가 나라는 존재를 인지할까? JWT // 세션 : 다른점 ★★★★★★★★★ 세션 : 메모리, 디ㅂㅣ 같은 또다르저장소에서 쓴고 jwt : 컴퓨팅 파워만으로 시큐리티 키를 해석하는것 토큰은 물과 같아서 ..

23.2.10

🎯 REFRESH TOKEN 🚨 블로그 참조하여 정리 JWT Token : 암호화된 3가지 데이터를 이어붙인 JSON 형태의 데이터 1. 헤더 (header) : 알고리즘 type(3번 서명 값을 만드는데 사용될 알고리즘이 지정됨 ex) HS256)이 들어감 (언제나 JWT) 2. 페이로드 (payload) : 토큰에 담긴 주체(Subject), 만료일(exp), 생성자(iss) 등이 담겨있 3. 서명 (signature) : 헤더에 정의된 알고리즘을 통해 헤더와 페이로드 데이터를 암호화한 비밀 값. 서버만 알고 있음 이때 비대칭키 암호화 방식을 사용하기 때문에 서버 측에서는 이 토큰을 받아서 서명 복호화하여 디코딩하는 방식으로 토큰의 유효성을 검증할 수 있다. Access Token, Refresh T..

23.2.9

깃배쉬 브랜치 생성 git checkout -b 브랜치이름 원격(develop)에서 받아오기 git pull origin develop 깃 컨벤션 git commit -m FEAT : 어쩌고저쩌고 하거나 git commit -m FEAT : "어쩌고저쩌고" 이렇게 두가지로 쓸 수 있다. 브랜치 삭제(develop으로 이동하고 삭제해야함) git branch -d 브랜치이름 git branch -D 브랜치 이름 : 강제 삭제 파이널 프로젝트 1주차 4일 시큐리티는 아직 구현이 제대로 되지 않았다. 리프레쉬 토큰,,,, 이 XX새끼,,,,, 일단 유저랑 트레이너 구현 완료 했고, 조원들의 도움을 받아 프로필까지 완료!!! 얏호~~!~!!~!

23.2.8

👀 슬랙 요녀석 참 신기하네 깃허브 연동되서 알림이 쇽쇽 날라온다. 진작 알았으면,,,, 좋았을텐데,,,,, 🚨 PUT vs PATCH 어제 S.A 올린거 튜터님 답변이 왔다. 덕분에 고친 부분이 PUT으로 수정하는 것들을 PATCH로 바꾸는 것이었는데, 기존에 우리가 썼었던 PUT은 값 중 하나라도 빈칸으로 넘겨주게 되면 NULL이 뜨는데 PATCH의 경우에는 비워두면 기존에 있던 값들이 유지되고 새로운 값만 수정되는 아주 신박한 녀석이다. 🤔 GregorianCalendar 회원가입 찾아보다가 생년월일을 이렇게 받는 사람을 봄. private GregorianCalendar birth; 그래서 찾아봤다. 신기하네,,,, 그렇지만 일단 String으로 받아놓고 나중에 수정해봐야징ㅋㅅ 깃허브 용어정리 h..

23.2.7

Spring 실무 기초 ㅇㅣ 강의를 이제서야 발견,,,,! 다시 복습한다는 느낌으로 2배속으로 쭉 봐야겠다. shift 2번 : 인텔리제이 통합 검색 창 ctrl + alt + s : 인텔리제이 환경설정 파이널 프로젝트 1주차 2일 ✅ 구글 스타일 적용시키기 https://github.com/google/styleguide 나는 인텔리제이니까 intellij-java-google-style.xml 다운 받아서 아래의 경로대로 따라가서 googleStyle 적용시켜 주면 끗~ ✅ 파트 나누기 로그인 & 시큐리티 쪽을 맡았다.....ㅎㅎ......... 엇덕하지,,,,, 패키지 구조 설정 다시 한 번 더 보기! 패키지 구조 설계 계층형 패키지 구조 말 그대로 계층형으로 패키지를 설계하는 방식이다. 엔티티(도..

23.2.6

새로운 조원과 새로운 조장과 함께 첫 시작! 메인 프로젝트 1주차 1일 발제에 더미 데이터란 말이 있어서 찾아봤다. ✅ 더미 데이터 더미테이터는 유용한 데이터가 아니지만 데이터베이스에 공간을 차지하도록 만들어놓는 것이다. 따라서 실제 데이터가 존재하는 것처럼 환경을 만들어 놓아 테스트를 위해 사용되기도 한다. 모든 데이터 필드가 채워져 있다는 것을 보증할 수 있어 보다 유의미한 테스트가 가능하기 때문이다. MYSQL 더미 데이터 넣기 성능 테스트를 진행하기 전, 좀 더 유의미한 테스트를 진행하기 위한 방법으로 가짜 데이터인 `더미테이터`를 DB에 넣어보았습니다. velog.io git 얘기가 나와서 어떻게 해야할 까 조원들이랑 고민하다가 코딩 컨벤션이란 걸 들었다. 분명 저번에 써니 튜터님이 말해준거 같..

23.2.5

이번 주 내내 내가 어려워 했던 스프링 심화와 숙련 강의를 다시 들으면서 복습해 봤다. 이미 정리한 내용들이라 TIL을 따로 적진 않았는데 확실히 실습을 하고 나서 들으니까 무슨 말인지 이해가 되고 이걸 왜 어려워했지? 라는 생각이 들었다. 역시 나란 인간은 개념 이해를 못해도 막상 어찌저찌 몸으로 깨우쳐야 제대로 알게되는 게 답인 인생인가 보다.

23.2.1

시큐리티 - Spring AOP 🤔 Top5 회원을 찾아보자 (With. Timstamped) 👉 API 사용시간 측정 방법 Scratch File Java 로 생성 하고 코드 붙여넣기 class Scratch { public static void main(String[] args) { // 측정 시작 시간 long startTime = System.currentTimeMillis(); // 함수 수행 // sumFromOneTo() 함수 : 1 에서 "입력된 숫자" 까지의 합계를 구하는 함수 long output = sumFromOneTo(1_000_000_000); // 측정 종료 시간 long endTime = System.currentTimeMillis(); long runTime = endTim..

23.1.31

시큐리티 OAuth2 시큐리티를 듣기 전 숙련 주차 때 만들었던 프로젝트를 jwt 적용해서 도메인도 바꾸고, controller, service 등등 전부 바꾸어 주었다. @AuthenticationPrincipal 요 놈을 이용해서 일일이 하나한 토큰을 검증해주어야했던 코드들을 JwtAuthFilter를 만들어서 갖고오는 방식으로 변경했더니 코드들이 예쁘게 줄었다😎 JPA의 영속성 context, fetch type의 지연로딩, 즉시로딩, 프록시 객체 라는 말을 튜터님이 하셨다. 지금은 언급을 안 하겠다는 말은 이후 강의에서 해주시겠지??? 간단하게 예습 정도로만 알아보자. 이야,,, 완전 쩌는 블로그 발견! 여기서 영속성 context 뿐만 아니라 엔티티 매니저, fetch type까지 한 번에 볼 ..