我有java spring应用程序,它在xml文件中使用从app.properties获取的占位符值。是否有可能在不启动应用程序的情况下创建测试或类似的东西,并获取弹出上下文,命名xml文件中使用的所有占位符(其中bean已配置)是正确的,没有遗漏,没有拼写错误等等? 感谢。
答案 0 :(得分:1)
一个想法是获取对ApplicationContext的引用并实际创建每个bean。如果没有正确定义某些内容,这应该抛出异常。
String[] beanNames = getAppContext().getBeanDefinitionNames();
for (int i = 0; i < beanNames.length; i++)
{
BeanDefinition beanDefinition = getAppContext().getBeanFactory()
.getBeanDefinition(beanNames[i]);
if (!beanDefinition.isAbstract())
{
getAppContext().getBean(beanNames[i]);
}
}