【SSH快速进阶】——Spring属性注入

简介:   上篇介绍了Spring IOC容器管理Bean的几种方式,IOC容器会帮助我们管理配置好的Bean及其之间的依赖关系。

 上篇介绍了Spring IOC容器管理Bean的几种方式,IOC容器会帮助我们管理配置好的Bean及其之间的依赖关系。

 除了管理我们自定义的类之间的依赖关系,Spring还可以帮助我们注入一些常用的属性。比如String、int、List、Set等~



 比如下面Bean1这个类,IOC容器在启动的时候也可以自动为它的这些属性赋值。

public class Bean1 {
  private String strValue;
  private int intValue;
  private List listValue;
  private Set setValue;
  private String[] arrayValue;
  private Map mapValue;
  //setter、getter
}


  这里仍然用setter注入的方式为Bean1的属性赋值,配置如下:



<bean id="bean1" class="com.danny.spring.Bean1">
  <property name="strValue">
    <value>Hello_Spring</value>
  </property>
  <property name="intValue" value="123456"></property>
  <property name="listValue">
    <list>
      <value>list1</value>
          <value>list2</value>
    </list>
  </property>
  <property name="setValue">
    <set>
      <value>set1</value>
      <value>set2</value>
    </set>
  </property>
  <property name="arrayValue">
    <list>
      <value>array1</value>
      <value>array2</value>
    </list>
  </property>
  <property name="mapValue">
    <map>
      <entry key="k1" value="v1"></entry>
      <entry key="k2" value="v2"></entry>
    </map>
  </property>
</bean>


 启动Spring容器,分别打印每个属性的值: ``` public void testInjection(){ Bean1 bean1=(Bean1)beanFactory.getBean("bean1"); System.out.println(bean1.getStrValue()); System.out.println(bean1.getIntValue()); System.out.println(bean1.getListValue()); System.out.println(bean1.getSetValue()); System.out.println(bean1.getArrayValue()); System.out.println(bean1.getMapValue()); } ```

 测试结果如下:


Hello_Spring
123456
[list1, list2]
[set1, set2]
[Ljava.lang.String;@3465f515
{k1=v1, k2=v2}



相关文章
|
7天前
|
存储 Java 数据安全/隐私保护
|
7天前
|
网络安全
ssh(Spring+Spring mvc+hibernate)——DeptDaoImpl.java
ssh(Spring+Spring mvc+hibernate)——DeptDaoImpl.java
13 0
|
7天前
|
网络安全
ssh(Spring+Spring mvc+hibernate)——BaseDaoImpl.java
ssh(Spring+Spring mvc+hibernate)——BaseDaoImpl.java
13 0
|
5天前
|
前端开发 Java 编译器
详解Spring与JDK注入
依赖注入是Spring框架的核心概念之一,它通过将对象之间的依赖关系外部化,实现了松耦合和可测试性。面向切面编程则允许开发人员将横切关注点(如日志、事务管理)从应用程序的主要业务逻辑中分离出来,以提高代码的模块化和可维护性。
11 4
|
6天前
|
XML Java 应用服务中间件
【JavaEE】JavaEE进阶:框架的学习 - Spring的初步认识
【JavaEE】JavaEE进阶:框架的学习 - Spring的初步认识
10 0
|
7天前
|
XML Java 数据格式
Spring 属性注入方式
Spring 属性注入方式
14 2
|
7天前
|
Java 数据库连接 数据库
Spring事务简介,事务角色,事务属性
Spring事务简介,事务角色,事务属性
20 2
|
7天前
|
Java Apache Spring
Spring BeanUtils与Apache BeanUtils提供基本属性复制,适用于简单需求
【5月更文挑战第4天】Spring BeanUtils与Apache BeanUtils提供基本属性复制,适用于简单需求;Cglib BeanCopier用于转换为Cglib代理对象;Apache PropertyUtils处理属性操作;Dozer支持复杂对象映射。选择工具取决于具体需求,如需精细控制或对象映射,推荐Dozer或Apache PropertyUtils。Apache BeanUtils可能因潜在的封装性破坏被禁用。
24 3
|
7天前
|
Java 开发者 Spring
Spring Boot中的资源文件属性配置
【4月更文挑战第28天】在Spring Boot应用程序中,配置文件是管理应用程序行为的重要组成部分。资源文件属性配置允许开发者在不重新编译代码的情况下,对应用程序进行灵活地配置和调整。本篇博客将介绍Spring Boot中资源文件属性配置的基本概念,并通过实际示例展示如何利用这一功能。
27 1
|
7天前
|
Java Spring 容器
Spring注入
Spring注入
33 13