묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결배달앱 클론코딩 [with React Native]
iOS(아이폰)에서 티맵 못 여는 문제 해결
강의대로 하면 아이폰에서 티맵 연동을 위해 Ing.tsx 페이지에서 path나 marker를 클릭했을 때 tmap이 설치되지 않았다는 Alert가 뜹니다. 이 때 xcode 콘솔에 아래와 같은 메시지가 나타납니다. 2022-04-15 13:56:50.123541+0900 FoodDeliveryApp[16779:2877008] -canOpenURL: failed for URL: "tmap:" - error: "This app is not allowed to query for scheme tmap" 2022-04-15 13:56:50.126746+0900 FoodDeliveryApp[16779:2877216] [javascript] { installed: false } -canOpenURL 함수에서 "tmap" URL을 열 수 없다는 에러를 리턴했기 때문으로 보입니다. 따라서 AndroidManifest에 을 넣어준 것과 유사하게 info.plist에 다음과 같이 "tmap" scheme을 넣어주면 tmap을 열 수 있습니다. 에디터에선 이렇게.. xcode에서는 이렇게.. 안드로이드와 마찬가지로 매뉴얼에는 없고 질답을 검색해야 안내해주는군요 ㅋㅋ https://community.openapi.sk.com/t/ios/6565/4 매일 기도하는 마음으로 코딩하니 신실해지는 느낌입니다.
-
미해결Flutter 중급 1편 - 클린 아키텍처
nested json에 대한 처리 및 테스트는 어떻게 해야 할까요? ㅠ
강의에서 가르쳐주신 방법데로 개인플젝에 테스트 코드를 만들어서 사용하고 있는데요.. 설계한 모델은 community, 그리고 이 안에 communitySetting을 담당하는 모델 2개를 만들어두었고 아래와 같이 freezed를 이용해서 구현을 해두었습니다. Community model (community setting 모델을 포함하는..) @freezedclass Community with _$Community { @JsonSerializable(fieldRename: FieldRename.snake, explicitToJson: true) const factory Community({ int? id, required String image, required String name, required String introduction, required int publicStatus, required String type, required String detailType, int? rank, String? zipcode, String? address, required int approveRequiredStatus, required String signupIntroduction, required CommunitySetting settingJson }) = _Community; factory Community.fromJson(Map<String, dynamic> json) => _$CommunityFromJson(json);} CommunitySetting 모델 @freezedclass CommunitySetting with _$CommunitySetting { @JsonSerializable(fieldRename: FieldRename.snake, explicitToJson: true) const factory CommunitySetting({ required String configName, required String fillPhone, required String fillGender, required String fillBirthDate, required String fillActivityArea, required String fillIntroduction, required String fillMotivationToJoin, }) = _CommunitySetting; factory CommunitySetting.fromJson(Map<String, dynamic> json) => _$CommunitySettingFromJson(json);} 그리고 test 코드에서는 fakeJson을 아래와 같이 nested json 있는 형태로 구성하고 테스트를 돌렸는데요 Nested Json은 setting_json 필드 입니다. String fakeJsonOne = """ { "id": 1, "image": "https://www.google.com/url?sa=i&url=https%3A%2F%2Fwww.facebook.com%2Fgroups%2F623067261102382%2F&psig=AOvVaw3ok-tVpjly7PZseHURwtWJ&ust=1647397226257000&source=images&cd=vfe&ved=0CAsQjRxqFwoTCIjvr4qHx_YCFQAAAAAdAAAAABAD", "name": "우리동네 커뮤니티", "introduction": "우리동네 오신걸 환영합니다.", "public_status": 1, "type": "OFFICIAL", "detail_type": "GNRL", "ranking": null, "zipcode": "112233", "address": "경기 양평군", "approve_required_status": 1, "signup_introduction": "가입인사 꼭 남겨주세요.", "setting_json": { "fillPhone": "OPTIONAL", "configName": "MANDATORY", "fillGender": "MANDATORY", "fillBirthDate": "NONE", "fillActivityArea": "OPTIONAL", "fillIntroduction": "OPTIONAL", "fillMotivationToJoin": "OPTIONAL" }}"""; type 'Null' is not a subtype of type 'String' in type cast 이런 에러가 계속 나면서 테스트가 계속 실패가 되고 있습니다. nestedJson으로 구성한 setting_json을 제대로 파싱을 못하는거 같은데 어느 부분을 확인을 해보면 될까요?
-
해결됨풀스택을 위한 탄탄한 프런트엔드 부트캠프 (HTML, CSS, 바닐라 자바스크립트 + ES6) [풀스택 Part2]
질문드립니다.
혹시 처음에 index.html에 했던 모든 기본 셋팅들을 페이지마다 해줘야하나요? 현재는 메인페이지만 했는데 로그인이라던지 더 추가되었을 때 해당 페이지들 마다 기본셋팅 mata태그들을 해줘야하나요?
-
해결됨[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
한가지 헷갈려서 질문 드려요
UV_THREADPOOL_SIZE 로 백그라운드에서 돌아가는 스레드 개수를 늘려도 코어를 여러개 사용하는거라고 하셨는데요(기본 4개에서 8개로 늘린다던지) 만약에 그럼 클러스터로 서버를 여러개 띄우고 스레드개수도 늘려버리면 코어 사용이 어떻게되는건가요?
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
별도의 스레드를 사용해서 커넥션 풀에 커넥션을 채우는 것이 이해가 되지 않습니다.
'애플리케이션을 실행할 때 커넥션 풀을 채울 때 까지 마냥 대기하고 있다면 애플리케이션 실행 시간이 늦어진다. 따라서 이렇게 별도의 쓰레드를 사용한다'라고 설명하셨는데 이 부분이 잘 이해가 되지 않네요... 별도의 스레드를 어떻게 사용하길래 커넥션풀을 채울 때 어플리케이션에 실행 시간에 영향을 주지 않게 되는 건지 다시 한번 설명부탁드립니다.
-
해결됨프로일잘러가 되기 위한 프로젝트 및 할 일 관리 - MS Planner
플래너 우선 순위 보다 디테일한 설정 가능할까요?
선생님 안녕하세요! 강의 통해서 플래너 터득하고 업무에서 쾌적하게 사용하고 있습니다. 한가지 궁금한 것이 있는데요. 현재 우선 순위의 경우 '긴급 / 높음 / 중간 / 낮음' 이렇게 4단계로 설정이 가능한데요. 우리 회사의 경우 우선순위란 것을 1,2,3,4,5,6,7,8,9,10... 방식으로 매기고 있었습니다. 그래서 엑살 차트에서도 오름차순이나 내림차순 정리를 하기도 했고요. 혹시 플래너에서도 이와 비슷하게 사용할 수 있는 방법이 없을까요? 굳이 플래너가 아니더라도 되니 어떤 앱을 쓰면 더 좋겠다...라던지 의견 좀 부탁드리겠습니다. 감사합니다!
-
미해결스프링부트 시큐리티 & JWT 강의
20초가량에 csrf 를 disable 한 이유가 뭔가요?
이전 수업을 들었으면 알 거라고 하는데 어디에 나와있을까요? 1강에서도 그냥 말없이 disable만 하셔서 질문 남겼는데 여기서도 그냥 넘어가서 제가 빼먹은 부분이 있나 싶어서요
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
제가 공부겸 회원가입페이지 만들어보는데 광고이미지를 추가했는데 제위치를 벗어나네요 이유를 알수있을가요??
이미지가 벗어나네요.. 멀 잘못했을가요?? 그런데 광고이미지 마다 아래 켭쳐처럼 각각 width ="100%"넣어주면 또 제대로 제위치에 나와요 이걸안넣어줘도 부모div에서 width =40%설정이되잇는데 왜 그게 제대로 적용이안되고 범위를 넘어갈가요 넘궁금합니다.. 이렇게 width ="100%"를 각각 넣어주면 다제대로 나와요 부모 div 에 width =40%가 설정되있는데 도 이걸 넣어줘야하나요?? 넘궁금합니다..
-
미해결[리뉴얼] 처음하는 파이썬 데이터 분석 (쉽게! 전처리, pandas, 시각화 전과정 익히기) [데이터분석/과학 Part1]
return 관련 질문 드립니다.
안녕하세요. 강의 잘 듣고 있습니다 :) pandas 라이브러리로 실제 데이터 전처리하기2 1분07초 부분 func함수 정의하는 부분의 return df_data 부분 질문이 있는데요. 1. 해당 부분에서 return 을 넣은 이유가 무엇인가요? 2. df_data 에는 시리즈가 할당되어 있으니 return 하면 해당 시리즈 데이터도 나와야 된다고 생각했는데 print 부분만 출력되고 시리즈는 출력이 안되는데 이유가 무엇인가요?? 답변 부탁드립니다. 감사합니다 :)
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
LoginService 로직 질문입니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]null 객체 반환하는거에서 java8 문법인 filter를 사용하셨잖아요? 여기서 궁금한게 java8 문법을 안쓰면 로직을 어떻게 구성해야 null객체를 반환할까요?? 그냥 if문으로 return null하닌까 로그인 실패하면 이상하게 뜹니다.
-
해결됨[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
dotenv.config()의 역할이
1. 시스템 환경변수에 .env에 있는 값들을 넣어주는건가요? 단순히 .env파일을 생성했다고해서 process.env에 들어가있을거 같진 않아서요. 2. app.js 말고 user.js를 하나 만들었다 했을때 거기서도 env를 쓰고싶다면 app.js에서 이미 dotenv.config()를 해줬다해도 다시한번 user.js에서도 dotenv.config()를 해줘야 하나요?
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
stream이 아닌 querydsl transform을 이용하는 방법에대한 문의
안녕하세요 8:30초대 강의를 보면 1:N관계의 list형태를 mapping하기 위해 flats .stream ~ .collect ~ 형태를 이용하고 있는데요 실무에서도 비슷한 사례가있어, 처음에 강사님처럼 어플리케이션단에 코드를 짰다가, 코드가 너무 복잡해져서 QueryDsl에서 transform + GroupBy.list를 이용하는식으로 변경해봤는데요. (아래 예시참조) from(Entity) // 1:N 관계의 List<Object> 를 추출, key : Entity.Id .transform( groupBy(Entity.Id) .list( Projections.fields(Example.class, Entity.Id, list( Projections.fields(Detail.class, Detail.id Detail.name ) ).as("DetailList") ) ) ) 문제는 구글링을 해보니, 해당 방식이 쿼리결과를 memory에서 리스트형태로 만들어내는것이라고 하더라구요. 예전에 강사님의 강의에서 '컬렉션 fetch join은 페이징을 이용할 수 없다'는 내용을 설명해주실 때, 해당 동작이 메모리에서 일어나기때문에 OOM이 발생할 수 있다 라고 말씀해주셨는데 이와 마찬가지로 transform , Groupby.list를 이용하는 것 역시 문제가 발생할까봐 우려스럽네요 아래 두가지 질문에 답변 부탁드립니다. Q1) 강사님의 application단에서 짜는 방식이 나을지 아니면 querydsl단에서 transform & Groupby.list를 이용하는게 나을지 고민되는데 두가지 방법중 무엇을 선택하는게 좋을까요? 후자의 경우 OOM이 발생하지는 않을지도 궁금합니다.. Q2) memory에서 작업하는게 위험한 이유가 뭔가요? 강사님처럼 application단에서 로직을 수행하는것도 memory에서 동작하는것 아닌가요? 친절하고 유익한 강의 늘 감사드립니다. 답변 부탁드립니다!
-
미해결15일간의 빅데이터 파일럿 프로젝트
클라우데라 매니져 접속하기 ERR_CONNECTION_REFUSED 에러
안녕하세요. 클라우데라 매니져 접속하기 문제에서 오류가 발생합니다. 프록시도 인터넷에 검색을 해서 변경을 하고 재부팅까지 했으나 계속해서 동일한 오류가 발생합니다.
-
해결됨[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
제로초님 궁금한게 있습니다.
1. 이미지파일뿐 아니라 pdf등 다른 파일들도 업로드가 되는데 이걸 막을 방법은 없나요? 만약 유저가 이미지를 업로드해야하는데 다른 파일을 업로드하게되면 저장도되고 디비에도 경로가 저장될텐데 그러면 저장은 어쩔수없이 되지만 불러올때 이상한 파일을 불러오게 되는건가요? 2. upload.fields를 써서 multiple로 여러개의 요청을 여러개파일로 받아봤는데 limits : 1 로해서 한 장으로 제한하거나 심지어 limits: 0으로 해도 multiple 로 보낸 여러장의 이미지가 다 업로드 정상적으로 됩니다.. limits를 잘못쓰고있는건가요
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
선생님 저 코드에서 최단거리인지 판별하는 것은
선생님 저 코드에서 최단거리인지 판별하는 것은 dis[7][7]에 어떤 수가 들어가면 바로 코드가 종료되는 조건도 없는데 어떻게 판별하는 것인가요...? 이 문제는 도착지점까지 도착하는 경로가 2개 뿐이라서 while(!Q.isEmpty()) 이 조건때문에 둘 중에 먼저 도착하면 자동으로 다른 경로를 계산할 때, Queue가 비어있게 되어서 반복문이 종료되어서 그게 가능하지만 도착하는 경로가 3개 이상일 경우에는 불가능 할 것 같은데 그때는 따로 조건을 추가해줘야 되나요...?
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
소스코드 관련 질문이 있습니다.
안녕하세요 :) 섹션 2. 6번 자릿수의 합에서 소스코드 관련하여 질문드립니다. 문제에서는 자릿수의 합이 같은 경우 입력순으로 먼저인 숫자가 출력이 된다고 되어있는데, 강의에서 풀이해주신 부분은 마지막에 입력된 숫자가 출력이 되는것 같습니다. max = -2147000000 for x in a : tot = digit_sum(x) if tot>max: max = tot res = x print(res) input1 7 137 460 603 40 521 128 125 >> 해당 텍스트로 인풋값을 넣었을 때 137이 출력이 되어야하는데 선생님이 설명해주신 코드로는 128이 출력이 되어, 혹시 코드가 변경되어야하는게 아닐까요?
-
미해결SCSS(SASS)+GRID+FLEX 실전 포트폴리오 퍼블리싱
선생님 질문 있습니다
안녕하세요! 강의 정말 유익하게 잘 듣고 있습니다. 다름이 아니라 제가 강의 내용을 바탕으로 조금 수정해보면서 만들고 있는데 a태그가 선택이 되질 않아 여쭙고 싶어서 문의 드립니다. html <!DOCTYPE html> <html lang="ko"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>본문</title> <!-- Custom CSS --> <link rel="stylesheet" href="style.css"> <!-- jQuery CDN --> <script src="https://code.jquery.com/jquery-3.5.1.min.js"></script> <!-- Featherlight.js --> <script src="script/featherlight/featherlight.js"></script> <link rel="stylesheet" href="script/featherlight/featherlight.css"> <!-- fontawesome --> <script src="https://kit.fontawesome.com/c21d7630fc.js" crossorigin="anonymous"></script> </head> <body class="indexbody"> <section class="indexmain"> <div> <h1> <span>LATEST </span> RECIPES </h1> </div> <div class="items"> <div> <a href="portfolio/portfolio-01.html" data-featherlight="iframe"><img src="images/test1.jpg"></a> <i class="xi-plus-thin"></i> <span> 난이도 '하'</span> <p> 라면</p> </div> <div> <a href="portfolio/portfolio-01.html"> <img src="images/test2.jpg"> </a> <i class="xi-plus-thin"></i> </div> <div> <a th:href="@{/}"> <img src="images/test3.jpg"> </a> <i class="xi-plus-thin"></i> <span> 난이도 '중' </span> <p> 파스타</p> </div> <div> <a th:href="@{/}"> <img src="images/test3.jpg"> </a> <i class="xi-plus-thin"></i> <span> 난이도 '하' </span> <p> 치킨</p> </div> </div> <br> <br> <div> <div classs="seemoreline"> <p class="seemore"> see more <i class="fa-solid fa-angles-right"></i></p> </div> </div> <br> <br> <div> <h1> <span>QUICK </span> 30-MINUTE MEALS</h1> </div> <div class="items"> <div> <a th:href="@{/}"> <img src="images/test7.jpg"> </a> <i class="xi-plus-thin"></i> <span> 0</span> </div> <div> <a th:href="@{/}"> <img src="images/test8.jpg"> </a> <i class="xi-plus-thin"></i> <span> 06</span> </div> <div> <a th:href="@{/}"> <img src="images/test9.jpg"> </a> <i class="xi-plus-thin"></i> <span> 07</span> </div> <div> <a th:href="@{/}"> <img src="images/test3.jpg"> </a> <i class="xi-plus-thin"></i> <span> 난이도 '중' </span> <p> 08</p> </div> </div> </section> </body> </html> scss //variables $font-base:10px; $color-base:#fff; //Mixin //기본 서식 상태 @mixin default { font-family: 'Montserrat Alternates', sans-serif; margin: 0; color: #222; line-height: 1.6em; background-color: #f8f8f8; } @mixin heading { font-family: 'Montserrat Alternates', sans-serif; text-align: center; font-weight: normal; position: relative; padding-bottom: 30px; &:before { content: ''; position: absolute; width: 100px; height: 4px; background-color: crimson; bottom: 0; left: 50%; transform: translateX(-50%); } span { color: crimson; } } /* Google Web Font */ @import url('https://fonts.googleapis.com/css2?family=Montserrat+Alternates:ital@1&family=Nanum+Gothic&display=swap'); @font-face { font-family: 'SuncheonB'; src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2202-2@1.0/SuncheonB.woff') format('woff'); font-weight: normal; font-style: normal; } /* XEION CDN */ @import url('http://cdn.jsdelivr.net/npm/xeicon@2.3.3/xeicon.min.css'); .indexbody { @include default; height: 100vh; display: grid; justify-content: center; margin: 200px 20%; } // indexmain section .indexmain { margin: 15px; display: flex; flex-direction: column; h1 { @include heading; font-size: $font-base*4; } .items { display: grid; grid-template-columns: repeat(4, 1fr); column-gap: 40px; row-gap: 40px; div { border-radius: 6px; overflow: hidden; box-shadow: 0 0 9px rgba(54, 53, 53, 0.3); position: relative; a { img { width: 100%; display: block; } } i { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%) scale(0.2); opacity: 0; font-size: 40px; color: $color-base; } span { position: absolute; bottom: -40px; width: 100%; text-align: center; padding: 10px; color: $color-base; font-weight: bold; font-size: 30px; font-family: 'Nanum Gothic', sans-serif; color: rgb(255, 255, 255); } p { font-family: 'SuncheonB'; font-size: 20px; text-align: center; } span, i, &:before { transition: 0.2s; // all = default값 pointer-events: all; } &:before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.418); opacity: 0; } &:hover:before { opacity: 1; } // .items div:hover 선택자 &:hover i { transform: translate(-50%, -50%) scale(1); opacity: 1; } &:hover span { bottom: 70px; } } } .seemore { border: 1px solid #000; height: 35px; width: 120px; text-align: center; padding-top: 10px; margin-left: 45%; } .seemore:hover { color: white; background-color: crimson; border: 1px solid crimson; } } /*tablet*/ @media (min-width: 768px) and (max-width: 1366px) { .indexbody { height: auto; } .indexmain { h1 { font-size: $font-base*4; } .items { grid-template-columns: repeat(2, 1fr); } .seemore { margin-left: 39%; } } } /*mobile*/ @media (max-width: 768px) { .indexbody { height: auto; } .indexmain { h1 { font-size: $font-base*4; } .items { grid-template-columns: repeat(1, 1fr); } .seemore { margin-left: 34%; } } } /* featherlight Custom CSS */ .featherlight .featherlight-content { margin-left: 0 !important; margin-right: 0 !important; max-height: 100% !important; width: 100%; height: 100%; } .featherlight .featherlight-inner { width: 100%; height: 100%; } .featherlight .featherlight-close-icon { top: 90% !important; left: 30px !important; line-height: 50px !important; width: 50px !important; font-size: 28px; background-color: crimson !important; color: #fff !important; border-radius: 50%; } 이런식으로 강의 내용에서 items에 p랑 span만 추가로 더 넣어준 상태로 만들고 featherlight를 추가 했는데 계속 실행이 되지 않았습니다. 제 생각에는 썸네일에 마우스를 올리면 커서가 바뀌지 않아 a태그가 선택되지 않는 상태인거 같습니다. 그래서 z-index도 추가해보고 postion값도 변경해봤는데도 실행이 되지 않아서 문의 드립니다. 어떤 부분을 수정하면 제대로 동작할지 한번 봐주시면 정말 감사하겠습니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
상속관계 JOINED일때 persist(), find()
안녕하세요 강사님, 덕분에 좋은 수업 잘 듣고 있습니다! 질문이 있어서 글을 남깁니다 예제와는 다르게, 저는 Item을 슈퍼로 두고, album, book, movie를 서브 객체로 상속받아서 해보고 있습니다. 그런데, Repository는 예제와 동일하게 개발했음에도 불구하고, persist() 또는 find() 실행시 JPA가 알아서 item에 album, book, movie을 외부 조인해서 쿼리문을 처리하는 것을 확인했습니다. 이렇게 상속 관계에 있을때 자동으로 조인을 해주는 것이 기본적으로 일어나는 상황이 맞는건가요? 또한, 저는 Item과 Book만 외부 조인을 하면 되는데, 자동으로 상속 관계에 있는 album, book, moive 모두 외부 조인을 하는 것으로 보이는데요, 이렇게되면 성능 면에서 적합하지 않을 것 같습니다. 혹시 book인 것을 확인하고 book만 외부 조인하도록 하는 팁이 있을까요? 감사합니다!
-
미해결게임 프로그래머 취업 전략 가이드
서버 스펙관련 질문입니다
서버쪽은 클라보다 학력이나 이런게 중요하다고 하샸는데 소위 말하는 스펙이 중요하다고 이해했습니다 따라서 같은 컴퓨터 공학 전공 4년제여도 대학 네임벨류에 따라 수준 차이가 크니 하위권 대학은 컴공 4년제가 큰 의미가 없어질 수도 있는지 궁금합니다! 또한, 서버쪽에서 오래 일하려면 석사 학위는 어떤지 궁금합니다!
-
미해결스프링 부트 개념과 활용
외부 설정과 관련된 질문입니다.
[질문] @Value로 정의된 값을 특정 클래스에서만 다르게 값을 재정의 할 수 있나요? [내용] ....->a->b->c->.... 순서로 읽히는 클래스가 있을 때 (....은 이전, 이후 클래스들 입니다.) a와 a이전 클래스들, c와 c이후 클래스들은 외부설정의 우선순위(3) application.properties 파일의 key, value를 읽고 b에서만 외부설정의 우선순위(13) @TestProperty로 해당 key, value를 재정의 한 값을 읽히려고 합니다. 결국 ....(3)->a(3)->b(13)->c(3)->....(3)을 의도하였는데 위와 같이 세팅을 하고 나서 run하면 ....(3)->a(3)->b(13)->c(13)->....(13)이 되어버립니다. 투박하지만 c에서 다시 @TestProperty와 같은 상위 외부 설정을 통해 다시 Override하면 되겠지만, 추후 클래스가 추가되는 경우엔 굉장히 비효율적이라고 생각해서 어렵네요. 의도하고자 한 내용대로 구현하는 방법이 있을까요?