在我的一個類中,有一個public static String
成員,我需要在applicationContext.xml
中設置此值!也就是說,我們有可能爲這個靜態屬性注入一個值嗎?Spring中注入靜態常量的值
14
A
回答
11
4
不,這不可能從您的XML內容注入價值靜態字段的一個例子。
如果你可以修改類,您有以下簡單的選擇:
- 刪除static修飾符,並添加@噴射/ @自動裝配領域
- 上面添加一個構造/二傳手/ init方法。
否則,您可以使用Spring的Java配置支持。
一個例子:
與靜電場和斷言Spring容器注入想要的值到靜態字段JUnit的方法演示類:
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("test-context.xml")
public class Demo {
public static String fieldOne;
@Test
public void testStaticField() {
assertEquals("test", fieldOne);
}
}
上下文命名空間添加到您的ApplicationContext,並且,組件掃描元件:
<context:component-scan base-package="com.example" />
與像這樣的靜態字段添加你的bean:
@Configuration
public class JavaConfig {
@Bean
public Demo demo() {
Demo.fieldOne = "test";
return new Demo();
}
}
在這種情況下,JavaConfig類必須位於component-scan元素中聲明的com.example包中。
相關問題
- 1. 注入靜態屬性值
- 2. 如何將spring bean注入靜態classRule?
- 3. 從常量java文件注入spring bean中的值
- 4. 靜態常量
- 5. Spring:如何向靜態字段注入值?
- 6. RoboGuice和靜態變量注入
- 7. 類中靜態常量ODR
- 8. 如何在Spring中注入靜態屬性?
- 9. 在Spring中存儲靜態最終常量?
- 10. Servicestack IDbConnection注入靜態類
- 11. 注入到靜態字段
- 12. 注入靜態EJB,廢話?
- 13. 注入Node.js到靜態HTML
- 14. Symfony2 +注入靜態類
- 15. 靜態變量值
- 16. 在swift類的靜態函數中訪問非靜態常量
- 17. C++類中的靜態常量成員
- 18. JAVA中的靜態方法注入局部變量
- 19. 差異靜態常量和靜態的返回時,一個靜態變量
- 20. 靜態類中的靜態變量和非靜態類中的靜態變量
- 21. PHP5:常量vs靜態
- 22. perl靜態常量hashrefs
- 23. 上`靜態常量WCHAR *`
- 24. 常量與靜態只讀
- 25. 靜態常量定義類
- 26. 靜態常量成員
- 27. 靜態庫和常量
- 28. android-strings.xml vs靜態常量
- 29. 引用父變量的靜態常量
- 30. 如何在Spring`@ Value`註釋中插入一個類常量?