This repository has been archived by the owner on Aug 13, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 3
#101 @AuthenticationRequired + ArgumentResolver 이면 redis를 2번 조회하는 문제 #102
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
soongjamm
changed the title
#101
#101 @AuthenticationRequired + ArgumentResolver 이면 redis를 2번 조회하는 문제
Jul 27, 2021
lyh7712
approved these changes
Jul 28, 2021
soongjamm
added a commit
that referenced
this pull request
Jul 28, 2021
* root package bluedelivery로 변경 * common.authentication 패키지 정리 * user package * api-application-domain-infra * config -> common.config * PasswordValidator를 controller와 같은 패키지로 이동 * test package * (AddressService) application -> domain 으로 이동 * category package * shop package * businesshour package * closingday package * menu 패키지 정리 * api(menu) 패키지 분할 * category adapter package * #101 @AuthenticationRequired + ArgumentResolver 이면 redis를 2번 조회하는 문제 (#102) * fix: 한 요청내에서 @AuthenticationRequired로 인증객체를 한번 조회하면 ThreadLocal에 저장하여 재사용 * ThreadLocal을 검사하도록 수정 Co-authored-by: lyh7712 <mmj2rv9@kakao.com>
soongjamm
added a commit
that referenced
this pull request
Jul 31, 2021
* root package bluedelivery로 변경 * common.authentication 패키지 정리 * user package * api-application-domain-infra * config -> common.config * PasswordValidator를 controller와 같은 패키지로 이동 * test package * (AddressService) application -> domain 으로 이동 * category package * shop package * businesshour package * closingday package * menu 패키지 정리 * api(menu) 패키지 분할 * category adapter package * #101 @AuthenticationRequired + ArgumentResolver 이면 redis를 2번 조회하는 문제 (#102) * fix: 한 요청내에서 @AuthenticationRequired로 인증객체를 한번 조회하면 ThreadLocal에 저장하여 재사용 * ThreadLocal을 검사하도록 수정 * swagger 의존성, 기본 설정 추가 * Swagger - Profile이 'prod'가 아닌 경우에만 동작하도록 설정 Co-authored-by: lyh7712 <mmj2rv9@kakao.com>
soongjamm
added a commit
that referenced
this pull request
Aug 7, 2021
* root package bluedelivery로 변경 * common.authentication 패키지 정리 * user package * api-application-domain-infra * config -> common.config * PasswordValidator를 controller와 같은 패키지로 이동 * test package * (AddressService) application -> domain 으로 이동 * category package * shop package * businesshour package * closingday package * menu 패키지 정리 * api(menu) 패키지 분할 * category adapter package * #101 @AuthenticationRequired + ArgumentResolver 이면 redis를 2번 조회하는 문제 (#102) * fix: 한 요청내에서 @AuthenticationRequired로 인증객체를 한번 조회하면 ThreadLocal에 저장하여 재사용 * ThreadLocal을 검사하도록 수정 * refactor: business hour * refactor: BusinessHour를 값 타입으로 변경 * (shop): mybatis mapper 제거 * #93 카테고리 mybatis -> jpa (#108) * refactor: ShopCategoy 엔티티 추가 및 Category를 JPA로 * fix controller PathVariable error * ShopCategoryRepository moved into domain package * fix query typo * jmeter script * #96 jmeter script (#109) * jmeter script * util: jib 설정 추가, redis 설정 수정, docker-compose 수정 등 * util: jib 설정 추가, redis 설정 수정, docker-compose 수정 등 (#110) * import 한줄 제거 Co-authored-by: lyh7712 <mmj2rv9@kakao.com>
soongjamm
added a commit
that referenced
this pull request
Aug 13, 2021
* feat: 기본적인 주문 예외 발생 상황 * test: 예외 케이스 추가 * refactor: OrderTest * fix: MenuRepository JPA 상속 제거(아직 Menu Entity 사용 불가능) * #76 #93 영업시간 구현 수정, jpa 적용 (#106) * root package bluedelivery로 변경 * common.authentication 패키지 정리 * user package * api-application-domain-infra * config -> common.config * PasswordValidator를 controller와 같은 패키지로 이동 * test package * (AddressService) application -> domain 으로 이동 * category package * shop package * businesshour package * closingday package * menu 패키지 정리 * api(menu) 패키지 분할 * category adapter package * #101 @AuthenticationRequired + ArgumentResolver 이면 redis를 2번 조회하는 문제 (#102) * fix: 한 요청내에서 @AuthenticationRequired로 인증객체를 한번 조회하면 ThreadLocal에 저장하여 재사용 * ThreadLocal을 검사하도록 수정 * refactor: business hour * refactor: BusinessHour를 값 타입으로 변경 * (shop): mybatis mapper 제거 * #93 카테고리 mybatis -> jpa (#108) * refactor: ShopCategoy 엔티티 추가 및 Category를 JPA로 * fix controller PathVariable error * ShopCategoryRepository moved into domain package * fix query typo * jmeter script * #96 jmeter script (#109) * jmeter script * util: jib 설정 추가, redis 설정 수정, docker-compose 수정 등 * util: jib 설정 추가, redis 설정 수정, docker-compose 수정 등 (#110) * import 한줄 제거 Co-authored-by: lyh7712 <mmj2rv9@kakao.com> * test: User가 없는 케이스 추가 refactor: Order 유효성 검사 Validator로 분리 validator 완료 * feat: Order의 Option 추가, Validator 추가 * feat: 주문총액 계산 * #107 장바구니 ArgumentResolver, 주문하기 컨트롤러 (#112) * test: User가 없는 케이스 추가 * feat: 컨트롤러에서 장바구니 정보를 파라미터로 받아온다. * chore: validation 수정, 테스트 수정 등 * Cart를 RequestBody로 받음. Cart 옵션 관련 클래스들 추가 * #85 배달 가능 지역 업데이트 API (#114) * feat: 배달가능지역 업데이트 기능 * refactor: 읍면동 조회 address mapper로 추상화 Co-authored-by: lyh7712 <mmj2rv9@kakao.com>
soongjamm
added a commit
that referenced
this pull request
Aug 13, 2021
* root package bluedelivery로 변경 * common.authentication 패키지 정리 * user package * api-application-domain-infra * config -> common.config * PasswordValidator를 controller와 같은 패키지로 이동 * test package * (AddressService) application -> domain 으로 이동 * category package * shop package * businesshour package * closingday package * menu 패키지 정리 * api(menu) 패키지 분할 * category adapter package * #101 @AuthenticationRequired + ArgumentResolver 이면 redis를 2번 조회하는 문제 (#102) * fix: 한 요청내에서 @AuthenticationRequired로 인증객체를 한번 조회하면 ThreadLocal에 저장하여 재사용 * ThreadLocal을 검사하도록 수정 * refactor: business hour * refactor: ShopCategoy 엔티티 추가 및 Category를 JPA로 * fix controller PathVariable error * ShopCategoryRepository moved into domain package * fix query typo * jmeter script * refactor: BusinessHour를 값 타입으로 변경 * (shop): mybatis mapper 제거 * #96 jmeter script (#109) * jmeter script * util: jib 설정 추가, redis 설정 수정, docker-compose 수정 등 * util: jib 설정 추가, redis 설정 수정, docker-compose 수정 등 (#110) * import 한줄 제거 * #107 주문 도메인 예외처리 (#111) * feat: 기본적인 주문 예외 발생 상황 * test: 예외 케이스 추가 * refactor: OrderTest * fix: MenuRepository JPA 상속 제거(아직 Menu Entity 사용 불가능) * #76 #93 영업시간 구현 수정, jpa 적용 (#106) * root package bluedelivery로 변경 * common.authentication 패키지 정리 * user package * api-application-domain-infra * config -> common.config * PasswordValidator를 controller와 같은 패키지로 이동 * test package * (AddressService) application -> domain 으로 이동 * category package * shop package * businesshour package * closingday package * menu 패키지 정리 * api(menu) 패키지 분할 * category adapter package * #101 @AuthenticationRequired + ArgumentResolver 이면 redis를 2번 조회하는 문제 (#102) * fix: 한 요청내에서 @AuthenticationRequired로 인증객체를 한번 조회하면 ThreadLocal에 저장하여 재사용 * ThreadLocal을 검사하도록 수정 * refactor: business hour * refactor: BusinessHour를 값 타입으로 변경 * (shop): mybatis mapper 제거 * #93 카테고리 mybatis -> jpa (#108) * refactor: ShopCategoy 엔티티 추가 및 Category를 JPA로 * fix controller PathVariable error * ShopCategoryRepository moved into domain package * fix query typo * jmeter script * #96 jmeter script (#109) * jmeter script * util: jib 설정 추가, redis 설정 수정, docker-compose 수정 등 * util: jib 설정 추가, redis 설정 수정, docker-compose 수정 등 (#110) * import 한줄 제거 Co-authored-by: lyh7712 <mmj2rv9@kakao.com> * test: User가 없는 케이스 추가 refactor: Order 유효성 검사 Validator로 분리 validator 완료 * feat: Order의 Option 추가, Validator 추가 * feat: 주문총액 계산 * #107 장바구니 ArgumentResolver, 주문하기 컨트롤러 (#112) * test: User가 없는 케이스 추가 * feat: 컨트롤러에서 장바구니 정보를 파라미터로 받아온다. * chore: validation 수정, 테스트 수정 등 * Cart를 RequestBody로 받음. Cart 옵션 관련 클래스들 추가 * #85 배달 가능 지역 업데이트 API (#114) * feat: 배달가능지역 업데이트 기능 * refactor: 읍면동 조회 address mapper로 추상화 Co-authored-by: lyh7712 <mmj2rv9@kakao.com> Co-authored-by: lyh7712 <mmj2rv9@kakao.com>
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
#101
@AuthenticationRequired 가 있으면 인터셉터에서 인증객체를 한번 조회하게 되는데,
ArgumentResolver를 사용하는 경우에서도 인증객체를 조회하기 때문에 둘을 같이 사용하면 한 요청내에서 두 번의 조회가 발생합니다
그래서 인터셉터에서 조회한 객체를 ThreadLocal에 저장하고, ArgumentResolver에서 인증객체를 조회하기 전에 ThreadLocal을 먼저 확인하도록 변경하였습니다