Java 根据变量的注释为变量赋值

Java 根据变量的注释为变量赋值,java,spring,annotations,Java,Spring,Annotations,在我当前的spring项目中,我正在寻找一种为我的一些POJO类的属性分配一些值的方法 此功能类似于对控制器方法中的某些参数使用注释PathVariable和ModelAttribute:当使用其中一个注释对参数进行注释时,自己的系统读取此参数的值并分配给变量,而无需使用= 在我的项目中,我有一些POJO类,如下所示: class Class { private <type> <attribute> public <type> get<

在我当前的spring项目中,我正在寻找一种为我的一些POJO类的属性分配一些值的方法

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

在我的项目中,我有一些POJO类,如下所示:

class Class {

    private <type> <attribute>

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

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

}
类{
私有的
公共获取(){
返回;
}
公共无效集(){
= ;
}
}
如果向属性添加注释(例如:@Setting),则在创建此类的新实例时,系统应读取文件中的值并分配给变量


有人能告诉我怎么做吗?

您可以使用Spring@PropertySource&@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);

有一个很好的最新版本

这可能有助于使用
@Value
参数从我的应用程序的其他类返回现有方法的值,而不是
${…}
?根据javadoc of value,一个常见的用例是使用“#{systemProperties.myProp}”样式表达式指定默认字段值。因此,我认为您需要一个带注释的initialize方法“@PostConstruct”,并将另一个类对象作为自动连线。您可以检查@PostConstructor注释。