2
我試圖在下面定義一個類。 Spring沒有實例化bean。使用spring從內部類創建bean
@Component
public class A{
@Component
public class B{
}
}
有什麼辦法讓Spring像上面那樣創建bean。
我試圖在下面定義一個類。 Spring沒有實例化bean。使用spring從內部類創建bean
@Component
public class A{
@Component
public class B{
}
}
有什麼辦法讓Spring像上面那樣創建bean。
我不這麼認爲,因爲內部類不可能存在沒有它的封閉類。因此它只能被注入封閉的Bean中。
的內bean定義不需要定義的ID或名稱;該容器忽略這些值。它也忽略範圍標誌。內部bean始終是匿名的,並且它們始終使用外部bean創建。不可能將內部bean注入到除了封閉bean之外的協作bean中。
我認爲它只能用於static
內部類而不能用於not-static inner
類。
這應該工作:
@Component
public class A{
@Component
public static class B{
}
}
請問答案[這裏](http://stackoverflow.com/a/24213978/2809078)幫助?內部類的構造函數需要外部類的實例,所以需要標記爲「@ Autowired」。 – ggovan
[無論如何@Inject/@ Autowire內部類到外部類?](http://stackoverflow.com/questions/24213823/anyway-to-inject-autowire-an-inner-class-into-一個-外級) – AndreyS