2013-03-28 39 views
1

当我有Spring Batch的工作定义如下:我怎么能得到我的java代码中的职位描述?

<batch:job id="FailTask"> 
<batch:description>My Job Description</batch:description> 
    <batch:step id="FailTask-step0"> 
     <batch:tasklet ref="sampleFailTask" /> 
     <batch:listeners> 
      <batch:listener ref="sampleFailStepListener" /> 
     </batch:listeners> 
    </batch:step> 
</batch:job> 

我怎么能拿我的Java代码的职位描述?

+0

你为获得这份工作而尝试了哪些代码? – 2013-03-28 12:50:52

+0

Map Jobs = applicationContext.getBeansOfType(Job.class); – Yosefarr 2013-03-28 14:18:20

+0

得到了什么结果? – 2013-04-02 15:41:42

回答

0

JobParser有行:

Element description = DomUtils.getChildElementByTagName(element, "description"); 
    if (description != null) { 
     builder.getBeanDefinition().setDescription(description.getTextContent()); 
    } 

因此,描述被设置为豆defenition。你可以从BeanDefinitionRegistry得到它。

+0

是否有任何Spring util获取元素? – Yosefarr 2013-04-03 10:17:19

+0

不确定你的意思。使用BeanDefinitionRegistry获取BeanDefinition和getDescription – 2013-04-03 13:53:52

1

好,我发现它:

AutowireCapableBeanFactory beanFactory = applicationContext.getAutowireCapableBeanFactory() 
BeanDefinition beanDefinition = ((BeanDefinitionRegistry) beanFactory).getBeanDefinition(taskName); 
String taskDescription = beanDefinition.getDescription(); 

现在的问题是如何让其他性能比说明?

相关问题