创建具有不同属性的相同类的多个bean的最简单方法

布莱克

说我有这个属性文件:

students.bill.firstname=John
students.bill.lastname=Doe
students.bill.age=20
students.jim.firstname=Jim
students.jim.lastname=Wright
students.jim.age=21
.
.
.

我想要一个xml bean,其中包含以其名字作为键的学生的地图。

对象示例:

学生.java

public class Student {
    String firstname;
    String lastname;
    Integer age;
}

课堂.java

public class Classroom {
    Map<String, Student> students;
}

我要寻找的是一种可能的说法,可以从properties.bill。*属性创建一个学生bean,然后将其添加到教室bean映射中。然后为students.jim。*创建一个,并将其添加到教室bean映射中。我真的不想为每个学生创建一个bean,然后将每个价值都放入其中。

然后马库斯

从Spring 0.9开始,Spring已经开箱即用地支持该功能(但很少有人知道这一点)。

您将需要稍微修改属性文件。

student.(class)=your.package.here.Student
student.(abstract)=true

jim.(parent)=student
jim.firstname=Jim
jim.lastname=Wright
jim.age=21
... Other student based definitions here.

现在您可以将aBeanFactoryPropertiesBeanDefinitionReader

DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
PropertiesBeanDefinitionReader reader = new PropertiesBeanDefinitionReader(bf);
reader.loadBeanDefinitions(new ClassPathResource("students.properties"));
Map<String, Student> students = bf.getBeansOfType(Student.class);

现在,如果您有一个新学生,只需将其添加到属性文件中并重新加载。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

创建与推导参数具有相同类型的局部变量的最简单方法是什么?

来自分类Dev

C#JSON-序列化具有相同属性的不同类型的多个对象

来自分类Dev

创建具有相同属性的方法

来自分类Dev

在具有某些相同属性的层次结构中处理不同类的最有效方法是什么

来自分类Dev

从多个配置文件创建的ClassPathXmlApplicationContext覆盖具有相同类型和不同ID的bean

来自分类Dev

如何创建具有相同属性\方法的组件

来自分类Dev

表单字段注入具有相同属性名称的多个bean中

来自分类Dev

使用LINQ从两个具有相同属性的不同列表创建对

来自分类Dev

Javscript从具有相同属性,具有相同键和添加量的不同对象创建公共对象

来自分类Dev

Javascript-添加具有不同值的相同属性

来自分类Dev

解析具有相同属性但名称不同的JSON文件

来自分类Dev

解析具有相同标签和不同属性的xml

来自分类Dev

有什么方法可以创建与父窗口具有相同属性的子窗口?

来自分类Dev

Java Bean验证:如何指定相同类型但具有不同组的多个验证约束?

来自分类Dev

UIView 及其子类上具有不同方法的相同属性

来自分类Dev

在matplotlib中绘制具有相同属性的多个函数

来自分类Dev

如何添加具有相同属性的多个UIImageViews

来自分类Dev

如何避免创建具有相同属性的对象

来自分类Dev

具有不同属性的相同属性名称的Json反序列化

来自分类Dev

选择具有相同属性1和不同属性2的行

来自分类Dev

使用Sunspot查询具有不同属性的多个模型

来自分类Dev

使用Sunspot查询具有不同属性的多个模型

来自分类Dev

具有相同类型但有不同限制的多个列表属性的类

来自分类Dev

使用ImmutableJS记录创建具有不同属性的子类

来自分类Dev

BigQuery用于记录具有不同属性的不同类型的事件

来自分类Dev

BigQuery用于记录具有不同属性的不同类型的事件

来自分类Dev

activemq-计算具有特定属性值的消息数的最简单方法

来自分类Dev

将属性从多个对象映射到具有相同属性名称的单个对象的有效方法

来自分类Dev

添加具有相同索引的熊猫系列的简单方法

Related 相关文章

  1. 1

    创建与推导参数具有相同类型的局部变量的最简单方法是什么?

  2. 2

    C#JSON-序列化具有相同属性的不同类型的多个对象

  3. 3

    创建具有相同属性的方法

  4. 4

    在具有某些相同属性的层次结构中处理不同类的最有效方法是什么

  5. 5

    从多个配置文件创建的ClassPathXmlApplicationContext覆盖具有相同类型和不同ID的bean

  6. 6

    如何创建具有相同属性\方法的组件

  7. 7

    表单字段注入具有相同属性名称的多个bean中

  8. 8

    使用LINQ从两个具有相同属性的不同列表创建对

  9. 9

    Javscript从具有相同属性,具有相同键和添加量的不同对象创建公共对象

  10. 10

    Javascript-添加具有不同值的相同属性

  11. 11

    解析具有相同属性但名称不同的JSON文件

  12. 12

    解析具有相同标签和不同属性的xml

  13. 13

    有什么方法可以创建与父窗口具有相同属性的子窗口?

  14. 14

    Java Bean验证:如何指定相同类型但具有不同组的多个验证约束?

  15. 15

    UIView 及其子类上具有不同方法的相同属性

  16. 16

    在matplotlib中绘制具有相同属性的多个函数

  17. 17

    如何添加具有相同属性的多个UIImageViews

  18. 18

    如何避免创建具有相同属性的对象

  19. 19

    具有不同属性的相同属性名称的Json反序列化

  20. 20

    选择具有相同属性1和不同属性2的行

  21. 21

    使用Sunspot查询具有不同属性的多个模型

  22. 22

    使用Sunspot查询具有不同属性的多个模型

  23. 23

    具有相同类型但有不同限制的多个列表属性的类

  24. 24

    使用ImmutableJS记录创建具有不同属性的子类

  25. 25

    BigQuery用于记录具有不同属性的不同类型的事件

  26. 26

    BigQuery用于记录具有不同属性的不同类型的事件

  27. 27

    activemq-计算具有特定属性值的消息数的最简单方法

  28. 28

    将属性从多个对象映射到具有相同属性名称的单个对象的有效方法

  29. 29

    添加具有相同索引的熊猫系列的简单方法

热门标签

归档