[英]Is it necessary that the injected class should have a spring specific annotation?
我有一個名為 FilterRequest 的 class 如下
@FieldDefaults(level = AccessLevel.PRIVATE)
@Getter
@Setter
@ToString
public class FilterRequest {
Filter filter;
}
如您所見,我沒有任何 spring 特定注釋,例如:@Component、@Service、@Repository 或 @Controller
我嘗試在另一個 class 中自動連接相同的 class
@Autowired
private FilterRequest filterRequest;
它會起作用嗎?
要自動裝配 object,spring 的實體管理器必須將其識別為 java bean,您可以通過使用@Component
對其進行注釋來實現。
這樣你就告訴 spring 負責在每次需要時初始化你的 object
@Service
、 @Repository
和@Controller
擴展@Component
問:它會工作還是不工作?
答:這行不通。 如果它是默認配置並且沒有修改庫,那么這個@Autowired
注解沒有任何意義。
如果你想讓它工作,你應該編寫自己的修改注釋及其實現。
這些注釋具有內部關系。 使用這些關系,spring 為您做了一些工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.