본문 바로가기
반응형

분류 전체보기714

210304_TIL * 어제의 다짐 - 테스트 리팩토링 완료하기 => 토큰 이용을 제외한 모든 테스트 코드를 리팩토링 완료. - encode, decode에 대해서 테스트코드 작성하기 => JWT에 관한 부분으로, 사용자 저장소를 이용하여 까다로울 것으로 예상하였으나, 저장소에 mockBean을 주입하여 해결 - 유효하지 않은 토큰에 대한 테스트코드 작성하기 => 유효하지 않은 토큰이란, null, blank 등의 상황으로 해당 경우에 대한 케이스 생성 완료 - JWT 작동을 전제로 Create, Update에서 구현해보기 => 토큰을 생성하고, claims에 대해 파싱하는 것까지 서비스 레이어에 추가 완료. 파싱한 정보를 다시 어떻게 이용할지에 대한 고민 필요 - @EqualsAndHashCode 학습하기 => 다음날로 .. 2021. 3. 5.
210303_TIL * 어제의 다짐 - JWT 개념 학습 및 실습 해보기 => JJWT 깃허브에 있는 공식 문서에 대한 해석 및 JWS 발급과정 이해 및 코드 공부 - JWT 작동을 전제로 Create, Update에서 구현해보기 => 개념은 이해하였으나, 실질적으로 사용자에게 토큰을 발급하고 이용하는 것은 아직 부족 - java key에 대한 함수들 좀 더 자세히 확인하기 => JJWT를 공부하면서 큰 이름을 이해하니, 자연스럽게 흐름이 보이고 거시적으로 이해함 - 이전과제와 새로운 과제 합치기 => Entity 반환형에서 Dto 반환형으로 바꾸면서 거의 완성하였지만 굉장히 많은 시간이 소요됨 또한 삭제부분을 soft version을 위해서 저장소 삭제가 아닌, deleted = true로 전환 *오늘 한 일 - JJWT.. 2021. 3. 4.
JJWT Java JWT: JSON Web Token for Java and Android JAVA JWT : JSON Web Token for Java and Android JJWT는 JWT를 생성하고 증명하는 라이브러리로서 자바와 JVM과 안드로이드에서 가장 쉽게 사용하고 이해할 수 있는 것을 목표로 한다. JJWT는 Apache 2.0 라이선스에 따라 JWT, JWS, JWE, JWK, JWA RFC 명세 및 오픈소스를 독점적으로 기반하는 순수 Java 구현이다. 라이브러리는 Okta' 선임 설계자인, Les Hazlewood에 의해 만들어졌으며, 컨트리뷰터들의 커뮤니티에서 지원하고 유지관리한다. Okta는 개발자를 위한 완벽한 인증과 사용자 관리 API이다. * 특징 - 모든 JDK와 Android에서 기.. 2021. 3. 3.
210302_TIL * 어제의 다짐 - Keys가 제공하는 hmacShaKeyFor , Keys.secretKeyFor 차이에 대해 살펴보기 => 전자는 매개변수로 바이트를, 후자는 매개변수로 알고리즘과 길이를 넣는다. 주석을 통해서 대략적인 입력과 사용방법에 대해 알아봤으며 전반적인 메세지 인증개념을 공부하고 한번 더 보면 이해가 잘 될 것 같다. - JWT 토큰 이용해 회원가입 완료하기 => JWT에 사용법과 토큰 생성에 대한 유효성만 체크하였다. 실제로 생성, 수정 시 적용하는 것은 못했다. - update의 요청과 응답 모두 Dto 전환하기 마무리 => 완료 - 한글로 커밋 메세지 작성하기 => 한글로 커밋을 작성하니 훨씬 우리말이라 편했지만, 여전히 작성이 낯설었다. 제목은 명령형, 내용은 최대한 코드로 말하기보다.. 2021. 3. 3.
Could not autowire. No beans of 'Mapper' type found * 문제 상황 Dozer의 공식 github 사이트에 따르면, 아래와 같이 Dozer를 사용하는 간단한 예시가 있습니다. 그래서 이 Mapper를 이용하고자 Mapper를 생성자에 주입하려고 하는데, 다음과 같은 오류를 냈습니다. 일단 무시하고 프로젝트를 실행하니 아래와 같이 bean을 찾지 못하니까 bean을 등록하라는 메세지가 나옵니다. 제가 원하는 객체가 제대로 주입되지 못한 것 같습니다. 따라서 설정을 통해 Mapper를 등록합니다. *문제 해결 @Configuration을 가지고 있는 설정파일을 하나 생성하고, @Bean을 등록시켜서 문제를 해결하였습니다. 2021. 3. 2.
210301_TIL *오늘 한 일 - JWT를 이용하여 토큰을 생성하는 방법을 배웠다. 회원가입 시, 토큰 생성, 업데이트 시 토큰 재갱신, 삭제 시 토큰제거를 하며, 오늘은 토큰 생성에 대해서 배웠다. secret 문자열을 넣어주면, hmacShaKeyFor를 통해서 Key를 생성한다. 자바는 Key라는 데이터타입을 제공한다. 이 값을 통해 실제 회원가입의 토큰을 생성하기 위한 준비를 한다. 간단한 로직이지만, 적절한 리팩토링을 통해 패키지와 클래스를 나눈다. secret은 yml에 정의했으며, JwtUtil에 Key 관리에 대한 부분도 분리한다. - create, update에 따라 Dto를 나누고 , 응답용 Dto도 새로 생성했다. create에 대한 부분은 모두 수정했으며 응답도 Dto로 하도록 만들었다. 도메인을 .. 2021. 3. 2.
[ 코드숨 ] 5주차 회고록 dal-lab.com/2019/09/18/today-i-learned/ 오늘 나는 무엇을 배웠나? 오늘 나는 무엇을 배웠나? 2019년 9월 18일 - 아샬 초기 스타트업을 위한 컨설팅 업체인 thoughtbot이란 곳이 있습니다. Ruby on Rails가 유행하던 시절에 여러 기술을 공유해서 유명한 곳이죠. Active Storage dal-lab.com 회고를 쓰기 앞서서, TIL ( Today I Leaned)에 대한 내용, 특히 Three FS를 활용하는 방법을 이해해야 합니다. 위의 달랩 홈페이지 아샬님의 글에서 관련된 내용을 확인할 수 있습니다. * 내맘대로 서론 어느새 5주차를 마무리합니다. 먼저, 친히 저에게 도움을 양승인님 감사합니다 :) 사소해보이지만 반대로 귀찮을 수 있는것을 친절하.. 2021. 3. 1.
[코드숨] 4주차 회고록 dal-lab.com/2019/09/18/today-i-learned/ 오늘 나는 무엇을 배웠나? 오늘 나는 무엇을 배웠나? 2019년 9월 18일 - 아샬 초기 스타트업을 위한 컨설팅 업체인 thoughtbot이란 곳이 있습니다. Ruby on Rails가 유행하던 시절에 여러 기술을 공유해서 유명한 곳이죠. Active Storage dal-lab.com 회고를 쓰기 앞서서, TIL ( Today I Leaned)에 대한 내용, 특히 Three FS를 활용하는 방법을 이해해야 합니다. 위의 달랩 홈페이지 아샬님의 글에서 관련된 내용을 확인할 수 있습니다. * 내맘대로 서론 늦은 인사를 올리지만 모두 명절 잘 보내셨나요 : ) 여러모로 한주 간의 휴식을 달콤하게 보냈습니다. ㅎㅎ 그렇게 다시 맞이한 이.. 2021. 2. 22.
public API에서 AllArgsConstructor 사용하지 말 것!!! 서론 class를 변경하려고 할 때 public API가 적합한지에 대해 생각해 본 적이 있습니까? LomBok을 사용할 때, 특히 몇가지 놓치기 쉬운 것들이 있습니다. AllArgsConstructor 어노테이션이 많은 문제를 일으킬 것입니다. 문제가 무엇인가? AllArgsConstructor를 사용한 간단한 클래스에 대해 보겠습니다. @Data @AllArgsConstructor public class Person { private final String firstName; private final String lastName; private Integer age; } 이제, 테스트에서 만들어진 생성자를 이용할 수 있습니다. def 'use generated allArgsConstructor'() .. 2021. 2. 21.
반응형