inflearn logo
강의

Course

Instructor

Spring Boot Concepts and Utilization

External Settings Part 1

외부 설정과 관련된 질문입니다.

255

hyunwookkang9872

1 asked

0

[질문]

@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하면 되겠지만, 추후 클래스가 추가되는 경우엔 굉장히 비효율적이라고 생각해서 어렵네요.

의도하고자 한 내용대로 구현하는 방법이 있을까요?

 

java spring-boot spring

Answer 1

0

whiteship

안녕하세요.

시나리오가 조금 복잡하네요. 특정 클래스에서만 @Value에 들어가는 값을 다른 곳에서 읽어오겠다는 것이죠? 그런건 어려울 것 같네요. 사용될 모든 프로퍼티는 애플리케이션 구동시 이미 우선순위에 따라 결정이 되어 있기 때문에 특정 클래스에선 다른 곳에서 값을 읽어오고 싶다면 스프링 부트가 제공하는 프로퍼티 로딩 메커니즘이 아닌 직접 구현한 방법을 이용하는게 좋겠습니다.

0

hyunwookkang9872

넵 매끄럽게 설명드리지 못하였는데, 답변 감사드립니다.
'애플리케이션 구동시 이미 우선순위에 따라 결정' 이 핵심이군요

자동설정 만들기 1부의 Holoman 관련 문의 드립니다.

0

84

1

라이브러리 개발 예제 강의를 찾습니다 !!!

0

225

2

강의 진행되로 똑같이 했는데 jquery가 실행되지 않았는데

0

310

1

HateOas 가 업데이트가 되어서, "Spring HATEOAS" 코드를 아래처럼 하셔야 될겁니다.

0

364

2

springSecurit jwt에 대해서 질문드립니다.

0

343

1

섹션2 자동설정 부분 질문있습니다.

0

249

1

mongo shell 명령어 대체 mongo -> mongosh

0

1012

1

데이터베이스 마이그레이션 강의에서 질문 있습니다

0

707

0

자동 설정 만들기 2부에서 질문 있습니다

0

413

1

의존성 관리 응용 부분에서 질문 있습니다

0

321

0

Intellij 에서 빈 주입할때 계속 빨간줄이 뜨는데 어떻게 고쳐야 할까요

0

1183

1

자동설정으로 다른 프로젝트 빈 사용(번외질문)

0

363

0

CREATE TABLE 예제 따라하다가 'expected "identifier"; SQL statement:' 오류나는 경우

2

2212

2

junit5 관련하여 질문드립니다.

0

307

2

맨 처음 프로젝트 생성 후 Run 시 에러

0

535

2

test와 runner account.setEmail에 동일한 값 입력

0

323

1

컨트롤러 view 호출

0

265

1

JVM 과 arguments 는 뭔가요???

0

1170

1

pom 테그 에러

0

355

1

안녕하십니까 기선님!!!!! webclient와 비동기관련 질문요청드립니다

0

1554

1

webEnvironment 내장 톰캣

0

228

1

application.yml 파일 분리

0

393

1

안녕하세요 기선님 서블릿 어플리케이션 구조에 대해 질문드립니다

0

281

1

안녕하세요 질문이 있습니다. :)

1

203

1