Spring其他类型的注入

简介: Bean 标签下的 <property> 元素中,使用以下元素配置 Java 集合类型的属性和参数,例如 List、Set、Map 以及 Properties 等。

Bean 标签下的 <property> 元素中,使用以下元素配置 Java 集合类型的属性和参数,例如 List、Set、Map 以及 Properties 等


1595a537355142be82fc0e4093ed2fe7.png


OtherType 类


public class OtherType {
    /*数组类型*/
    private String[] arr;
    /*list集合类型*/
    private List<String> list;
    /*map集合类型*/
    private Map<String,String> map;
    /*set集合类型*/
    private Set<String> set;
    public void setArr(String[] arr) {
        this.arr = arr;
    }
    public void setList(List<String> list) {
        this.list = list;
    }
    public void setMap(Map<String, String> map) {
        this.map = map;
    }
    public void setSet(Set<String> set) {
        this.set = set;
    }
    @Override
    public String toString() {
        return "OtherType{" +
                "arr=" + Arrays.toString(arr) +
                ", list=" + list +
                ", map=" + map +
                ", set=" + set +
                '}';
    }
}


spring.xml


<bean id="otherType" class="com.liu.c.OtherType">
   <!--数组-->
   <property name="arr">
       <array>
           <value>Java</value>
           <value>PHP</value>
           <value>C语言</value>
       </array>
   </property>
   <!--list-->
   <property name="list">
       <list>
           <value>小张</value>
           <value>小刘</value>
       </list>
   </property>
   <!--map-->
   <property name="map">
       <map>
           <entry key="Java" value="java"></entry>
           <entry key="PHP" value="php"></entry>
       </map>
   </property>
   <!--set-->
   <property name="set">
       <set>
           <value>MySQL</value>
           <value>Redis</value>
       </set>
   </property>
</bean>


Test测试


public class TestOtherType {
    public static void main(String[] args) {
        ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("spring.xml");
        OtherType otherType = context.getBean("otherType", OtherType.class);
        System.out.println(otherType);
    }
}


结果,成功注入


OtherType{
arr=[Java, PHP, C语言], 
list=[小张, 小刘], 
map={Java=java, PHP=php}, 
set=[MySQL, Redis]}


如果要注入的属性是对象类型的,使用 ref 即可


相关文章
|
3月前
|
XML Java 开发者
Spring Boot中的bean注入方式和原理
Spring Boot中的bean注入方式和原理
390 0
|
3月前
|
Java 程序员 Spring
Spring5深入浅出篇:Spring对象属性注入详解
Spring5深入浅出篇:Spring对象属性注入详解
|
3月前
|
XML Java 程序员
Spring6框架中依赖注入的多种方式(推荐构造器注入)
依赖注入(DI)是一种过程,对象通过构造函数参数、工厂方法的参数或在对象实例构建后设置的属性来定义它们的依赖关系(即与其一起工作的其他对象)。
50 3
|
4天前
|
XML Java 数据格式
Spring5入门到实战------4、IOC容器-Bean管理XML方式、集合的注入(二)
这篇文章是Spring5框架的实战教程,主题是IOC容器中Bean的集合属性注入,通过XML配置方式。文章详细讲解了如何在Spring中注入数组、List、Map和Set类型的集合属性,并提供了相应的XML配置示例和Java类定义。此外,还介绍了如何在集合中注入对象类型值,以及如何使用Spring的util命名空间来实现集合的复用。最后,通过测试代码和结果展示了注入效果。
Spring5入门到实战------4、IOC容器-Bean管理XML方式、集合的注入(二)
|
23天前
|
XML JSON Java
spring,springBoot配置类型转化器Converter以及FastJsonHttpMessageConverter,StringHttpMessageConverter 使用
spring,springBoot配置类型转化器Converter以及FastJsonHttpMessageConverter,StringHttpMessageConverter 使用
118 1
|
21天前
|
Java Spring
spring注入的几种方式
spring注入的几种方式
10 0
|
2月前
|
Java Spring 容器
spring如何进行依赖注入,通过set方法把Dao注入到serves
spring如何进行依赖注入,通过set方法把Dao注入到serves
|
2月前
|
Java 开发者 Spring
spring事务类型,事务传递,隔离级别?
spring事务类型,事务传递,隔离级别?
|
2月前
spring-boot报错循环注入报错:has been injected into other beans
spring-boot报错循环注入报错:has been injected into other beans
142 3
|
2月前
|
Java Linux 程序员
技术笔记:Spring生态研习【五】:Springboot中bean的条件注入
技术笔记:Spring生态研习【五】:Springboot中bean的条件注入