English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Podemos injetar valores de conjunto no Spring Framework através do construtor. constructor-arg Dentro de um elemento podem ser usados três elementos.
pode ser: List Set Map
Cada conjunto pode ter valores baseados em strings e baseados em não strings. Neste exemplo, tomamos como exemplo o "fórum", onde Um problema pode ter várias respostas. Ao todo, há três páginas:
Question.java applicationContext.xml Test.java
Neste exemplo, a lista que usamos pode conter elementos repetidos, você pode usar um set que contenha apenas elementos únicos. No entanto, você precisa alterar a lista configurada no arquivo applicationContext.xml e na classe Question.java.
Question.java
Este classe contém três atributos, dois construtores e o método displayInfo() para exibir informações. Aqui, usamos uma lista para conter várias respostas.
package com.w3codebox; import java.util.Iterator; import java.util.List; public class Pergunta {}} private int id; private String nome; private List<String> respostas; public Pergunta() {} public Pergunta(int id, String nome, List<String> respostas) { super(); this.id = id; this.nome = nome; this.answers = answers; } public void exibirInformações(){ System.out.println(id+" "+nome); System.out.println("as respostas são:"); Iterator<String> itr=answers.iterator(); while(itr.hasNext()){ System.out.println(itr.next()); } } }
applicationContext.xml
Aqui é usado o construtor-A lista de elementos arg define a lista.
<?xml versão="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/esquema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instância" xmlns:p="http://www.springframework.org/esquema/p" xsi:schemaLocation="http://www.springframework.org/esquema/beans http://www.springframework.org/esquema/beans/spring-beans-3.0.xsd"> <bean id="q" class="com.w3codebox.Pergunta"> <constructor-arg valor="111></constructor-arg> <constructor-arg valor="O que é java?"></constructor-arg> <constructor-arg> <lista> <valor>Java é um linguagem de programação</valor> <valor>Java é uma Plataforma</valor> <valor>Java é uma Ilha da Indonésia</valor> </lista> </constructor-arg> </bean> </beans>
Test.java
Esta classe obtém o Bean do arquivo applicationContext.xml e chama o método displayInfo.
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(); } }