Spring工厂注入例子
Spring配置文件
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<bean id="productBean1" class="factory.StaticFactory" factory-method="create" scope="prototype">
</bean>
<bean id="productBean2" factory-bean="myfactory" factory-method="create" scope="prototype">
</bean>
<bean id="myfactory" class="factory.NonStaticFactory"/>
</beans>
StaticFactory.java
public class StaticFactory {
public static ProductBean create(){
return new ProductBean("FromStaticFactory");
}
}
NonStaticFactory.java
public class NonStaticFactory {
public ProductBean create(){
return new ProductBean("FromNonStaticFactory");
}
}
ProductBean.java
public class ProductBean {
public String name;
public ProductBean(){}
public ProductBean(String name){
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return name;
}
}
测试类
public class FactoryTest {
private static ApplicationContext ctx = new ClassPathXmlApplicationContext("factory/factory-context.xml");
/**
* @param args
*/
public static void main(String[] args) {
StaticFactoryTest();
NonStaticFactoryTest();
}
public static void StaticFactoryTest(){
ProductBean pb = (ProductBean)ctx.getBean("productBean1");
out.println(pb);
}
public static void NonStaticFactoryTest(){
ProductBean pb = (ProductBean)ctx.getBean("productBean2");
out.println(pb);
}
}
Spring工厂注入例子相关推荐
- spring依赖注入三种方式
首先,要学习Spring中的Bean的注入方式,就要先了解什么是依赖注入. 依赖注入是指:让调用类对某一接口的实现类的依赖关系由第三方注入,以此来消除调用类对某一接口实现类的依赖. Spring容器中 ...
- Spring内核研究-通过工厂注入
Spring专门设计了对工厂模式支持,你可以使用静态工厂方法来创建一个Bean,也可以使用实例工厂的方法来创建Bean.下面分别介绍这2种方法. 静态工厂注入 定义一个Bean使用自己类上的静 ...
- 【Spring 工厂】反转控制与依赖注入、Spring工厂创建复杂对象3种方式
反转控制与依赖注入 反转控制 与 依赖注入 反转控制(IOC Inverse of Control) 依赖注入 (Dependency Injection - DI) Spring工厂创建复杂对象(3 ...
- 【Spring 工厂】注入详解 — Set注入(JDK内置类型,用户自定义类型)、构造注入(重载)
Spring 注入(Injection) 什么是注入? 为什么要注入? 如何进行注入[开发步骤] Spring注入的原理分析(简易版) Set注入详解 JDK内置类型 String+8种基本类型 数组 ...
- Spring 依赖注入方式详解
平常的Java开发中,程序员在某个类中需要依赖其它类的方法. 通常是new一个依赖类再调用类实例的方法,这种开发存在的问题是new的类实例不好统一管理. Spring提出了依赖注入的思想,即依赖类不由 ...
- diy实现spring依赖注入
[README] 本文diy代码实现了 spring 依赖注入,一定程度上揭示了依赖注入原理: [1]控制反转-Inversion of Control 是一种编码思想,简而言之就是 应用程序A可以使 ...
- Spring 依赖注入的理解及三种注入方式
Spring 依赖注入概念和三种注入方式(理解及应用) 什么是注入 要了解Spring的三种注入方式首先前提是得先了解一下什么是注入,相信很多人对这个概念都是模糊不清的,网上的解释是这样的: 依赖注入 ...
- spring依赖注入的四种方式
平常的java开发中,程序员在某个类中需要依赖其它类的方法,则通常是new一个依赖类再调用类实例的方法,这种开发存在的问题是new的类实例不好统一管理,spring提出了依赖注入的思想,即依赖类不由程 ...
- Spring依赖注入和循环依赖问题分析
Spring源码揭秘之依赖注入和循环依赖问题分析 前言 依赖注入的入口方法 依赖注入流程分析 AbstractBeanFactory#getBean AbstractBeanFactory#doGet ...
最新文章
- PHP zval内存回收机制和refcount_gc和is_ref_gc
- python肘部法则 最优分类
- DL之self-attention:self-attention自注意力机制的简介、应用之详细攻略
- 基于某网站的信息爬取与保存
- html5 ajax数据显示,html5的ajax学习(二)
- 设计模式之创建者模式
- 智能投影:下一个传统投影的颠覆者
- POJ 1149(最大流)
- 小米路由器爆款产品遭遇友商恶意抹黑 官方怒晒黑稿...
- JZ3-从尾到头打印链表
- apiCloud中aui获取不到高度,pos.h为0,offsetHeight为0问题
- 两转变两服务器,两大服变鬼两老服制霸,《魔兽世界》怀旧免转结束后的服务器调查...
- 操作系统实验报告fcfs算法c语言,操作系统实验报告 作业调度实验报告...
- 【重装Windows的十大理由】
- 计算机模拟 matlab,MATLAB计算机模拟实例课件.ppt
- 责任链模式的高级用法
- php后缀名隐藏,php怎样隐藏后缀名
- 黑马程序员-微信小程序-原生框架——购物平台-分类页面
- 如何在旋转屏幕后不再重建Activity
- PHP最好的培训学校-兄弟连IT教育
热门文章
- python人脸识别毕业设计-Python基于Dlib的人脸识别系统的实现
- python入门教程2word-使用python操作word
- python学习方向-Python方向(转载)
- python培训班哪些比较好-哪家python培训班比较好?2018年如何选择
- python代码块使用缩进表示-Python 为什么使用缩进来划分代码块?
- java和python的web自动化有什么区别-Python和Java哪个更适合做自动化测试?
- python爬虫从基础到实战-2019-08-05 《python爬虫开发:从入门到实战》
- python绘制条形图-python matplotlib库绘制条形图练习题
- python实现文件下载-Python 实现文件下载
- python xpath语法-Python Xpath语法