전체 글

좋은 영향력을 전파하기 위해 노력하는 엔지니어 리오입니다.
JWT Authentication Flow HTTP는 connectionless, stateless한 성질을 가지고 있는 프로토콜 입니다. 그렇기에 유저 인증이 필요한 경우 인증이 필요할 때 마다 로그인을 할 수 없으므로 토큰이나 세션을 통해 유저 인증 상태를 관리하게 되는데 그중 가장 널리 사용되는 JWT 토큰 전략을 스프링 시큐리티 활용하여 사용방법과 동작과정을 정리한 글입니다. 1. 유저 정보를 자바에서 Validation을 활용하여 유저 정보를 체크하고 H2 데이터 베이스에 저장을 합니다. 2. 스프링 시큐리티를 통해 유저 로그인 정보를 인증하고 토큰을 발급 받습니다. 3. 스프링 시큐리티를 통해 전달 받은 토큰을 통해 인가 과정을 거친 후 서비스 로직을 동작하도록 합니다. 스프링 시큐리티가 있는..
· JAVA
자바에서 실수 표현 하는 방법 정수 제공하는 실수형 데이터 타입에는 float과 double이 있다. 정수형 int, long 타입과 동일하게 각 4, 8 바이트의 메모리 공간을 활용하지만 실수를 가수와 지수부분으로 나누어 표현하는 부동 소수점 방식을 기반으로 더 넓은 범위의 값을 표현 할 수 있습니다. 컴퓨터는 실수도 2진수로 표현하기 때문에 두가지 방법으로 상대적으로 꽤 복잡하게 동작하게 됩니다. 실수를 표현하는 방식으로는 고정 소수점 방식(Fixed-Point Number Representation)과 부동 소수점 방식(Floating-Point Number Representation)으로 나뉘어 사용이 됩니다. 고정 소수점 방식 고정 소수점 방식(Fixed-Point Number Represent..
· CS
서론 TDD 스터디를 운영하면서 팀원들과의 책 내용을 보면서 따라하기보단 서로 개념을 나누면 좋을 것 같다는 생각에 이와 같이 블로그 글을 정리하는 것으로 더 오래 기억이 남게하기 위해 간단하게 정리를 한 글입니다. 본론 필자는 각각의 테스트를 목록화를 시키면서 다음과 같이 테스트를 진행을 하게 되는데 살펴보자면 테스트 코드 작성 테스트를 실행하고 구현한 코드가 실패하는지 확인 코드 작성 테스트 성공 확인 리팩토링을 통해 중복제거 필자는 아래의 과정을 통해 아래와 같은 점을 느낄 수 있다고 말합니다. 각각의 테스트가 기능의 작은 변경에도 얼마나 커버가 되는지 새 테스트를 동작하기 위해 얼마나 많은 하드 코딩을 하는지 테스트를 얼마나 자주 실행하는지 수없이 작은 단계를 거치면서 수많은 리팩토링을 합니다. ..
· 일상
👩🏻‍💻 지원 계기 이전 직장을 퇴사하고 웹 백엔드 개발자로 이직을 준비한지 6개월 정도 준비하면서 스프링 부트와 JPA를 사용하여 AWS를 사용하고 클라우드 환경에 토이프로젝트도 진행해보면서 독학을 해봤지만 혼자 공부하는데 있어서 시간이 너무 많이 소모가 되고 제가 지방에 살기 때문에 스터디, 부트 캠프, 국비 교육 등을 참여해서 팀 프로젝트를 하는데 있어 제한 사항이 많아 취업준비를 하는데 어려움이 많았었습니다.😥 그러다 우연하게 아래의 온라인 부트 캠프를 카톡 광고를 통해 보게 되었고 라이징 캠프에 접하게 되었습니다! 📆 진행 과정 진행 과정은 아래와 같이 진행 되는데 온라인 세션을 통한 멘토님과의 실시간 강의 및 토론, 라이징 테스트를 통한 팀프로젝트 진행을 한다는 것에 끌려 바로 보자마자 신청을..
· CS
사이드 프로젝트 회의를 진행하면서 TDD(Test Driven Development) 대한 이야기가 나왔고 TDD에 대해 아직 정확하게 사용해보지 못해봤고 들어만 봤기 때문에 어디까지 테스트를 진행하고 어떤 부분에 테스트를 도입해야 되는지 감이 잡히지 않아 여러 사이트와 영상을 들으면서 제가 느낀 부분에 대해 정리를 해놓은 글입니다. 많은 피드백 바랍니다. TDD란 TDD를 위키에 정의된 내용은 아래와 같이 정의가 되었습니다. 테스트 주도 개발(Test-driven development TDD)은 매우 짧은 개발 사이클을 반복하는 소프트웨어 개발 프로세스 중 하나이다. 개발자는 먼저 요구사항을 검증하는 자동화된 테스트 케이스를 작성한다. 그런 후에, 그 테스트 케이스를 통과하기 위한 최소한의 코드를 생성..
· JavaScript
자바스크립트에서 이터러블한 함수를 만들 때 사용되는 객체입니다. 좀 더 자세하게 알아보도록 하겠습니다. Generator function 제네레이터 함수는 function 앞에 *을 붙여서 정의하고 Generator로 선언한 함수는 Generator 객체를 반환합니다. function* generator(i) { yield i; yield i+1; } const get = generator(10); console.log(gen.next().value); // output: 10 console.log(gen.next().value); // output: 11 위 코드와 같이 첫 요청을 했을 때에는 값을 넣었을 때는 10을 리턴하지만 next() 후 다시 리턴을 해보니 11을 리턴합니다. 여기서 한번더 ne..
ri5
리오의 개발일지