spring学习笔记(6)装配Bean 的种类和区别 【资源来自网络 版权非本人】

Bean的种类

1.普通Bean:之前操作的都是普通bean

<bean  id="" class="A"> Spring 就直接创建A 然后返回

2.FactoryBean:是一个特殊的Bean,具有工厂生产对象的能力,但是只能生产特定的对象

  bean必须实现Factorybean的接口,此接口提供一个getObject()来获得特定的bean。

  <bean id="" calss="Factorybean">先创建 Factorybean实例 ,然后调用fb.getObject()然后返回的是返回值

  底层代码:

    FB fb=new FB();

    return fb.getObject();  

FactoryBean和BeanFactory对比,

  BeanFactory:是一个工厂,用于生产任意bean。

  FactoryBean :是一个bean用于生产特点的bean。

原文地址:https://www.cnblogs.com/zhbx/p/8228376.html

时间: 2024-11-12 22:52:11

spring学习笔记(6)装配Bean 的种类和区别 【资源来自网络 版权非本人】的相关文章

spring学习笔记(5)装配Bean 实例工厂 【资源来自网络 版权非本人】

实例工厂:必须现有工厂的实例对象,通过实例对象创建对象.所有的方法都是非静态的(这一点和静态工厂有区别) (直接看代码) 工厂(和静态工厂的区别就是非静态 其他都一样) package c_inject.c_factory; /* * 实例工厂 */ public class MyBeanFactory { public UserService createService(){ return new UserserviceImpl(); } } 配置(配置和静态的有点区别  仔细看看吧 ) <?

Spring学习总结之---装配Bean

Spring配置的可选方案 前言:Spring容器负责创建应用程序中的bean并通过DI来协调这些对象之间的关系,作为开发人员,你需要告诉Spring容器要创建那些Bean,以哪种方式创建,并且如何将这些bean装配在一起. 1.装配方式可选方案: 1-1:在XML中进行显示配置:在java中进行显示配置:隐式的bean发现机制和自动装配:可以使用互相搭配使用.备注:建议使用自动装配方式. 2.自动化装配:组件扫描(Spring会自动对发现组件类进行扫描并创建上下文bean):自动装配(Spri

Spring学习总结之装配bean

1.  XML中显式配置 规范,文件头: <?xml version="1.0" encoding="UTF-8"?>            <beans xmlns=http://www.springframework.org/schema/beans                     xmlns=http://www.w3.org/2001/XMLSchema-instance                     xsi:schema

Spring学习笔记二(Bean注入的几种方式)

1.前言 上一篇博客从宏观上讲解了一下Spring的知识,下面这篇来着重讲解一下有关Bean注入的几种方式. 2.Bean注入的几种方式 2.1 类构造器初始化 这也是默认的方式,在上一篇博客中也有所体现.直接在applicationContext.xml配置文件中,配置Bean标签即可 <span style="font-family:SimSun;font-size:18px;"><!-- 实例工厂初始化 --> <!-- 必须先创建实例工厂对应的Be

Spring学习笔记——Sprin管理Bean的原理

当我们使用Spring时候在Xml文件中通过 <bean id="service" class="com.finance.service.AmountServiceImpl" /> 配置就可以操作该Bean的属性和方法,那么Spring到底是如何实现的呢?下面让我们自己实现这个过程. 首先我模拟Spring的命名方式创建一个Bean管理类MyClassPathXMLApplicationContext.java,代码如下: // 自定义容器 public

Spring学习笔记五(JDKProxy和cglibProxy的区别)

1.前言 上一篇博客讲解了一下Spring中的AOP,而这篇博客来剖析下Spring实现AOP的两种机制:JDKProxy和cglibProxy两种动态代理  2.JDKProxy动态代理 JDK动态代理,为接口实现的对象创建代理.具体详见源码. <span style="font-family:SimSun;font-size:18px;">package com.test; import java.lang.reflect.InvocationHandler; impo

Spring学习笔记(一)

Spring学习笔记(一) Spring核心思想: IOC:  Inversion Of Control (控制反转) / DI: Dependency Injection (依赖注入) AOP: Aspect Oriented Programming (面向切面编程) IOC 1. 简单的应用 Model package com.wangj.spring.model; public class User { private String username; private String pas

不错的Spring学习笔记(转)

Spring学习笔记(1)----简单的实例 ---------------------------------   首先需要准备Spring包,可从官方网站上下载.   下载解压后,必须的两个包是spring.jar和commons-logging.jar.此外为了便于测试加入了JUnit包.   在Myeclipse中创建Java项目.   编写一个接口类,为了简单,只加入了一个方法.   Java代码   1.package com.szy.spring.interfacebean;  

Spring实战3:装配bean的进阶知识

主要内容: Environments and profiles Conditional bean declaration 处理自动装配的歧义 bean的作用域 The Spring Expression Language 在装配bean—依赖注入的本质一文中,我们探讨了Spring的三种管理bean的方式:自动装配.基于JavaConfig.基于XML文件.这篇文字将探讨一些Spring中关于bean的管理的高级知识,这些技能你可能不会每天都用,但是非常重要. 3.1 Environments