Spring IOC的Bean对象

zhu-qi 2018-11-08 原文

Spring IOC的Bean对象

—恢复内容开始—

在Spring IOC模块中Bean是非常重要的。在这里我想给大家讲讲关于Bean对象实例化的三种注入方式:

首先,我先讲一下关于Bean对象属性值的两种注入方式:set注入  和  构造注入

  constructor-arg:通过构造函数注入。 
       property:通过setter对应的方法注入。

那么什么是注入:在Spring中对Bean属性赋值的过程我们称之为依赖注入

set注入是通过对象的set方法为对象属性赋值,构造注入是通过bean对象的构造方法为属性注入值.

set注入:通过封装类的属性,利用get和set方法调用属性,配置会先调用bean对象的无参构造函数构建对象,然后通过set方法为属性赋值。

在 Spring 配置文件中,用户可以通过 Bean 的属性 property 进行参数注入

 这里设置userDao属性, ref表示引用,此时需要一个userDao的bean

    <property name="userDao" ref="userDao" />

构造注入:

当然假如对象提供了对应的构造方法也可以通过指定构造方法为属性注入值

 

实际项目中也可以构造注入和set注入混合使用。

注意:

依赖注入时可以将配置信息提取到properties文件中,然后通过spring表达式#{id.key}的方式提取数据。

 

可以在XML中添加

 <util:properties id=“cfg” location=“classpath:configs.properties”/>

那么在Bean中可以:

其中#为spring表达式特殊标记,{}为表达式内容,cfg为util:properties 标签中定义的id. jdbcUser、jdbcPassword为配置文件等号左边的key

 

集合对象的注入:

在属性值集合的时候,在Bean配置文件中注入:

最后就是测试了

 

依赖对象值注入:

存在很多个Bean对象,这些对象之间会存在一定依赖关系,当某个Bean对象依赖于其它Bean对象,可以通过spring按照一定的规则(例如按类型或者按名字),进行依赖查找然后进行值的注入

 这个注入由于时间关系就没有写了,大家可以去网上找一下

 

 

 

 

—恢复内容结束—

发表于 2018-11-08 00:47 凌晨与风 阅读() 评论() 编辑 收藏

 

版权声明:本文为zhu-qi原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/zhu-qi/p/9926716.html

Spring IOC的Bean对象的更多相关文章

  1. SSM框架整合(IntelliJ IDEA + maven + Spring + SpringMVC + MyBatis)

    版权声明:本文为博主原创文章,未经博主允许不得转载。   目录(?)[+] 创建maven项目 项目配置文件 […]...

  2. Bean的生命周期

    @ 目录 Bean的生命周期 容器管理Bean的生命周期 1. 指定初始化和销毁方法: 2. 通过实现接口的方 […]...

  3. Spring boot 入门(一):快速搭建Spring boot项目

    用idea快速搭建spring boot项目 (一)Spring boot介绍   本部分摘自:https:/ […]...

  4. 【小家Spring】老项目迁移问题:@ImportResource导入的xml配置里的Bean能够使用@PropertySource导入的属性值吗?

    #### 每篇一句 > 大师都是偏执的,偏执才能产生力量,妥协是没有力量的。你对全世界妥协了你就是空气。 […]...

  5. Spring 学习笔记(2) Spring Bean

    一、IoC 容器 IoC 容器是 Spring 的核心,Spring 通过 IoC 容器来管理对象的实例化和初 […]...

  6. 关于@Profile、@Conditional、@Primary、@Qualifier及@Scope等实现高级装配的spring注解

    1、关于@Profile注解的介绍 @Profile注解主要用在针对不同环境而条件选择的注入bean 在开发过 […]...

  7. Spring–AOP(面向切面)编程

    AOP 切面就像一把菜刀,将Java处理业务流程进行分割,在分割处添加特定的业务处理。主要应用于声明事务、安全 […]...

  8. spring之mvc原理分析及简单模拟实现

      在之前的一篇博客中已经简单的实现了spring的IOC和DI功能,本文将在之前的基础上实现mvc功能。 一 […]...

随机推荐

  1. 怎么样获取小米手机4的ROOT超级权限

    小米手机4有何方法开通了Root超级权限?各位都清楚,Android手机有Root超级权限,一旦手机开通了ro […]...

  2. 网站架构考试问题

    rsync? #1.什么是备份?为什么要备份?备份哪些数据? 简答:1、备份:就是给源文件增加一个副本 2、为 […]...

  3. ewebeditor入侵手段

    1.常规入侵 管理后台  ewebeditor/admin_login.asp 默认密码  admin/adm […]...

  4. F#周报2019年第51&52期

    新闻 介绍DataFrame 介绍System.Threading.Channels ConfigureAwa […]...

  5. 最大子数组问题全解

    问题描述 给定一个整数数组,找到一个具有最大和的子数组,返回其最大和。 问题解析 很经典的一个问题,下面给出3 […]...

  6. 最新可靠好用的DNS服务器地址汇总

    最新可靠好用的DNS服务器地址汇总 2016-05-18 09:26  狼人:-)  阅读(1254)  评论 […]...

  7. HBase(一)HBase入门简介

    一 HBase 的起源 HBase 的原型是 Google 的 BigTable 论文,受到了该论文思想的启发 […]...

  8. 基于MVC的RESTful风格的实现

    基于MVC的RESTful风格的实现 1.RESTful风格阐述 REST服务是一种ROA(Resource- […]...

展开目录

目录导航