根据其注释为变量赋值

时间:2014-11-03 13:06:29

标签: java spring annotations

在我目前的春季项目中,我正在寻找一种为某些POJO类的属性赋值的方法。

此功能类似于对控制器方法中的某些参数使用注释PathVariableModelAttribute:当参数使用其中一个注释进行注释时,自己的系统会读取此参数的值并分配给变量,而无需使用<variable> = <value>

在我的项目中,我有一些像这样的POJO类:

class Class {

    private <type> <attribute>

    public <type> get<attribute>() {
        return <attribute>;
    }

    public void set<attribute>(<type> <parameter>) {
        <attribute> = <parameter>;
    }

}

如果向属性添加注释(例如:@Setting),当我创建此类的新实例时,系统应读取文件中的值并分配给变量。

任何人都可以告诉我该怎么做?

1 个答案:

答案 0 :(得分:1)

你可以使用Spring @PropertySource&amp; @Value注释。我的意思是这样的:

 @Value("${sourceLocation:c:/temp/input}")
    private String source;

    @Value("${destinationLocation:c:/temp/output}")
    private String destination;

    @Autowired
    private Environment environment;

    public void readValues() {
        System.out.println("Getting property via Spring Environment :"
                + environment.getProperty("jdbc.driverClassName"));

        System.out.println("Source Location : " + source);
        System.out.println("Destination Location : " + destination);

有一个很好的最新blogpost here

相关问题