Существует ли JSR-330 эквивалент аннотации Spring @Value? - PullRequest
4 голосов
/ 06 февраля 2012

Я пытаюсь использовать аннотации JSR-330 с Spring 3.

Существует ли JSR-330, эквивалентный аннотации Spring * @Value, для вставки значений свойств?Например, могу ли я использовать @Provider таким образом, чтобы Spring мог ввести значение свойства?

1 Ответ

5 голосов
/ 06 февраля 2012

Я искал использование @Value в проекте, который использует org.springframework.beans-3.0.5.RELEASE.jar.Здесь аннотация указывается в двух местах: AutowiredAnnotationBeanPostProcessor и QualifierAnnotationAutowireCandidateResolver.

В AutowiredAnnotationBeanPostProcessor единственная упомянутая аннотация JSR-330 - javax.inject.Inject.

public AutowiredAnnotationBeanPostProcessor()
{
    this.autowiredAnnotationTypes.add(Autowired.class);
    this.autowiredAnnotationTypes.add(Value.class);
    ClassLoader cl = AutowiredAnnotationBeanPostProcessor.class.getClassLoader();
    try {
        this.autowiredAnnotationTypes.add(cl.loadClass("javax.inject.Inject"));
        this.logger.info("JSR-330 'javax.inject.Inject' annotation found and supported for autowiring");
    }
    catch (ClassNotFoundException localClassNotFoundException)
    {
    }
}

QualifierAnnotationAutowireCandidateResolver не упоминает аннотации JSR-330.

...