如何使用Guice或Spring根据属性

时间:2016-05-24 20:05:56

标签: java spring dependency-injection guice

我有一个类似下面的课程。

public class Person {

    private String name;

    public Person(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }
}

我的目的是将List<Person>注入另一个类,其中应该从属性文件创建列表。 这样的事情。

persons(0)=John
persons(1)=Jake

1 个答案:

答案 0 :(得分:-1)

这里有Spring示例。 尝试这样,您可以添加任意数量的属性。或者只是迭代属性。在属性文件中只需设置属性person=Name。如果属性文件位于项目资源文件中,那么Spring将自动找到它。

import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

@Component
public class MyProperties {

    @Value("${person}")
    private String person;

    public String getPerson(){
    return this.person;
    } 

}

public class anotherClass {

@Atowired
MyProperties myProperties;

List<Person> createObjectsBasingOnProperties(){
   ArrayList<Person> persons = new ArrayList<>();
   persons.add(new Person(myProperties.getPerson()));
   return persons;  

}

}