如何在Spring中将值从属性文件传递给字段的自定义注释

时间:2015-12-02 06:50:44

标签: spring

我正在使用Spring 4.

我创建了一个自定义注释,如

@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface MyElement {

    HTML_TAG htmlTag() default HTML_TAG.INPUT_TEXT;

    FindBy findBy() default FindBy.NAME;

    String valueToFind() default "";

}

现在我班上有@Component,我可以像

一样写作
@Component
@PropertySource(value = "config/${environment}/environment.properties",     ignoreResourceNotFound = false)
public class MasterCardConnectPage extends MDESBasePage {


@Value("${user.name.byName:}")
private String usernamevalue;

    @MyElement(htmlTag=HTML_TAG.INPUT, findBy=FindBy.NAME, valueToFind="${user.name.byName}")
    private MYWebElement userName;


}

配置文件

@Configuration
   @ComponentScan(basePackages = { "com.bdd.mdes" })
    @PropertySources({
       // we can define according to project
            @PropertySource(value =     "config/${environment}/environment.properties", ignoreResourceNotFound = false)
})

@ImportResource("common-beandefs.xml")
public class TestsAnnotationConfiguration extends
            BDDSpringConfiguration {
   }

sign.in.button 是在config.property文件中定义的属性

它应该从属性文件中获取其值,但事实并非如此。任何人都可以帮助我吗?

如果我在@Value的帮助下打印它的值,如果正常工作。

我只想知道如何将属性文件中的值传递给用户创建的注释。

0 个答案:

没有答案