0
@DependsOn annotation을 사용해야하고 안전하게 bean 이름을 얻고 싶습니다. 내 현재 구현은 아래에 설명되어 있지만 클래스 사용법을 쉽게 찾고 리팩토링에 안전하려면 ChildContextProvider.class.getSimpleName() 또는 이와 유사한 구현에서 상수 CLASS_NAME을 설정하는 것이 좋습니다. 상수와SimpleClassName에서 Spring에서 bean 이름을 안전하게 설정하는 방법
콩 : @DependsOn 주석과
@Component(value = WebhookManager.CLASS_NAME)
public class WebhookManager {
public static final String CLASS_NAME = "WebhookManager";
...
}
콩 :
@RestController
@DependsOn({ChildContextProvider.CLASS_NAME, WebhookManager.CLASS_NAME})
public class PropertiesRESTController {
...
}
나는이 같은 솔루션을 찾고 있지만,이 메시지와 함께 컴파일되지 않습니다 : CLASS_NAME이 일정해야합니다 :
@Component(value = WebhookManager.CLASS_NAME)
public class WebhookManager {
public static final String CLASS_NAME = ChildContextProvider.class.getSimpleName();
...
}
예 메시지에서이를 이해했지만 해결책을 묻습니다. 어쩌면 존재하지 않을 수도 있습니다. – Cyva
제가 볼 수있는 유일한 해결책은 첫 번째 예를 사용하는 것입니다. 런타임에 계산되지 않는 상수를 사용해야합니다. String 컴파일 타임 상수를 사용하는 것이 왜 효과가 없습니까? –
그것은 작동하지만 리팩토링 등 안전을 위해 더 좋은 것을 찾고있었습니다. 답장을 보내 주셔서 감사합니다. – Cyva