SpringでList自体をBeanとして定義する
Listの要素にしたいクラス(Config.java)
package com.example.utillist; public class Config { private int num; private String data; public int getNum() { return num; } public void setNum(int num) { this.num = num; } public String getData() { return data; } public void setData(String data) { this.data = data; } }
XML定義(config.xml)
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:util="http://www.springframework.org/schema/util" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd"> <util:list id="configList" value-type="com.example.utillist.Config"> <ref bean="config0" /> <ref bean="config1" /> <ref bean="config2" /> </util:list> <bean id="config0" class="com.example.utillist.Config"> <property name="num" value="0" /> <property name="data" value="this is cofig 0" /> </bean> <bean id="config1" class="com.example.utillist.Config"> <property name="num" value="1" /> <property name="data" value="this is cofig 1" /> </bean> <bean id="config2" class="com.example.utillist.Config"> <property name="num" value="2" /> <property name="data" value="this is cofig 2" /> </bean> </beans>
利用
package com.example.utillist; import java.util.List; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.ImportResource; @SpringBootApplication @ImportResource("classpath:config.xml") public class UtillistApplication { public static void main(String[] args) { var applicationContext = SpringApplication.run(UtillistApplication.class, args); List<Config> list = (List)applicationContext.getBean("configList"); list.forEach(config -> { System.out.println(config.getNum() + ":" + config.getData()); }); } }
Spring徹底入門 Spring FrameworkによるJavaアプリケーション開発
- 作者:株式会社NTTデータ
- 発売日: 2016/07/20
- メディア: Kindle版