English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Wir können Sammlungswerte in Spring-Framework durch Setter-Methode injizieren. property Innerhalb eines Elements können drei Elemente verwendet werden. Es kann sein:
List Set Map
Eine Sammlung kann sowohl auf Zeichenfolgen als auch auf nicht zeichenfolgenbasierte Werte basieren. In diesem Beispiel verwenden wir "Forum" als Beispiel, wo Ein Problem kann mehrere Antworten habenEs gibt insgesamt drei Seiten:
Question.java applicationContext.xml Test.java
In diesem Beispiel kann die Liste, die wir verwenden, wiederholte Elemente enthalten. Sie können eine Set verwenden, das nur einzigartige Elemente enthält. Aber Sie müssen die Liste in der applicationContext.xml-Datei und die Liste in der Question.java-Datei ändern.
Question.java
Dieses Objekt enthält drei Attribute mit Settern sowie Getter und die displayInfo()-Methode zum Abrufen von Informationen. Hier verwenden wir eine Liste, um mehrere Antworten zu speichern.
package com.w3codebox; import java.util.Iterator; import java.util.List; public class Question { private int id; private String name; private List<String> answers; //setter und getter public void displayInfo(){ System.out.println(id+" "+name); System.out.println("answers are:"); Iterator<String> itr=answers.iterator(); while(itr.hasNext()){ System.out.println(itr.next()); } } }
applicationContext.xml
Hier wird der Builder verwendet-Die Liste der Elemente für arg definiert eine Liste.
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> <bean id="q" class="com.w3codebox.Question"> <property name="id" value="1></property> <property name="name" value="Was ist Java?"></property> <property name="answers"> <list> <value>Java ist eine Programmiersprache</value> <value>Java ist eine Plattform</value> <value>Java ist eine Insel</value> </list> </property> </bean> </beans>
Test.java
Diese Klasse holt das Bean aus der Datei applicationContext.xml und ruft die displayInfo-Methode auf.
package com.w3codebox; import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.xml.XmlBeanFactory; import org.springframework.core.io.ClassPathResource; import org.springframework.core.io.Resource; public class Test { public static void main(String[] args) { Resource r = new ClassPathResource("applicationContext.xml"); BeanFactory factory = new XmlBeanFactory(r); Question q = (Question) factory.getBean("q"); q.displayInfo(); } }