目录结构

pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.geyao</groupId><artifactId>spring01geyao</artifactId><version>1.0-SNAPSHOT</version><dependencies><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>4.3.13.RELEASE</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-test</artifactId><version>3.2.0.RELEASE</version></dependency><dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.17</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-test</artifactId><version>4.3.4.RELEASE</version><scope>test</scope></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-test</artifactId><version>4.3.4.RELEASE</version><scope>test</scope></dependency></dependencies>
</project>

log4j.properties

### 设置###
log4j.rootLogger = ERROR,stdout### 输出信息到控制抬 ###
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n
log4j.category.org.springframework.beans.factory=ERROR

applicationContext.xml

<?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.xsd"><!--bean元素:描述当前的对象需要由spring容器管理id属性:标识对象 未来在应用程序中可以根据id获取对象class对象:被管理的对象的全名--><bean id="notepad" class="com.geyao.demo.NotePad" scope="singleton"/>
</beans>

notepad类

package com.geyao.demo;public class NotePad {public NotePad() {super();System.out.println("NotePad的构造函数"+this.toString());}
}

Notepadtest类

package com.geyao.demo;import org.junit.Test;
import org.springframework.context.support.ClassPathXmlApplicationContext;
//无论我们是否去主动获取对象,spring上下文刚加载就会创建对象
//无论获取多少次,都是统一对象
//
public class NotepadTest {@Testpublic void test01(){ClassPathXmlApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");NotePad notePad1= (NotePad)context.getBean("notepad");NotePad notePad2= (NotePad)context.getBean("notepad");System.out.println(notePad1=notePad2);}
}

notepadtestAuto类

package com.geyao.demo;import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:applicationContext.xml")
public class NotePadTestAuto {@Autowiredprivate NotePad notePad1;@Autowiredprivate NotePad notePad2;@Testpublic void test01(){System.out.println(notePad1==notePad2);}
}

运行结果

NotePad的构造函数com.geyao.demo.NotePad@478190fc
com.geyao.demo.NotePad@478190fc

spring学习(47):bean的作用域相关推荐

  1. (转)配置Spring管理的bean的作用域

    http://blog.csdn.net/yerenyuan_pku/article/details/52833477 Spring管理的bean的作用域有: singleton  在每个Spring ...

  2. 理解Spring框架中Bean的作用域

    本篇介绍Spring Bean实例的作用范围,Spring Bean实例的作用范围由配置项scope限定.通过本篇的学习,可以达成如下目标. ● 应用scope配置项配置Bean的作用域 ● 应用单例 ...

  3. Spring容器中Bean的作用域

    当通过Spring容器创建一个Bean实例时,不仅可以完成Bean实例的实例化,还可以为Bean指定特定的作用域.Spring支持如下5种作用域: singleton:单例模式,在整个Spring I ...

  4. Spring学习3 - Bean的属性、DI依赖注入三种方式

    文章目录 1. 属性设置 - XML配置文件.以及与其等价的注解形式 2. 依赖注入DI的方式 2.1 属性自动注入 - 不推荐 代码准备阶段 代码测试 2.2 子节点构造器注入 - 不推荐 2.3 ...

  5. spring中的Bean的作用域-singleton

    Spring提供了五中scope.分别是 singleton.prototype.request.session.global session. 我们主要讨论前两者的区别? 当一个bean被声明为单例 ...

  6. Spring学习之Bean的配置

    本文将会介绍Spring框架中wiring beans的相关内容,包括:bean的声明与创建.在xml文件中对bean基本使用方法的配置以及Spring 3中新特性Spring Expression ...

  7. 【Spring学习】Bean生命周期

    我理解的Bean生命周期包括两个方面: Bean何时创建,何时销毁 Bean从创建到销毁的执行流程 一.Bean创建与销毁 Bean的创建时机主要由几个配置项共同来决定,包括: scope属性,决定是 ...

  8. spring学习-2 Bean的装配

    Spring 支持 3 种依赖注入的方式 属性注入 构造方法注入 工厂方法注入 属性注入: 属性注入即通过 setter 方法注入Bean 的属性值或依赖的对象 属性注入使用 <property ...

  9. Spring学习笔记-Bean初始化销毁

    1.bean的初始化操作 1.1通过在配置文件中,设置bean的init-method方法,destory-method方法,spring框架会通过反射机制来调用 java类 package com. ...

  10. Spring学习(七)bean装配详解之 【通过注解装配 Bean】【自动装配的歧义解决】...

    本文借鉴:Spring学习,@Bean 的用法(特此感谢!) 自动装配 1.歧义性 我们知道用@Autowired可以对bean进行注入(按照type注入),但如果有两个相同类型的bean在IOC容器 ...

最新文章

  1. Pycharm 快捷键
  2. 2019年云计算十大趋势:云成为获取人工智能主要途径
  3. 20 道 Spring Boot 面试题
  4. 手把手教你C语言静态库的开发
  5. Linux下sed命令替换配置文件中某个变量的值(改变包含字符的一行的值)之二——只改变第一出现的那一行
  6. Java线程池(Executor)详解和用法
  7. python二重积分0到正无穷_python函数的数值二重积分
  8. 基于JAVA+SpringBoot+Mybatis+MYSQL的智慧水产养殖系统
  9. Apache Spark Meetup China 第1期 最全资料下载
  10. 【图像处理】基于matlab GUI图像直方图+滤波+小波变换+分割处理系统【含Matlab源码 608期】
  11. Mac 有道词典 无法取词、划词
  12. 操作系统第三章课后答案
  13. I tell you网站如何下载
  14. pdf页面倒序如何调整?
  15. 魔方机器人机械部分_通过强化学习解决第2部分的魔方
  16. HML_FwLib_8051使用补充说明
  17. java获取本机ip的方法
  18. 标准Lipschitz连续函数与伪Lipschitz连续函数
  19. 2021年全国Python程序员薪资曝光,网友:吹的不多.....
  20. java 是什么_java中是什么意思?

热门文章

  1. Codeforces Round #304 (Div. 2)
  2. checkboxlist与数组结合用的技
  3. php模拟表单提交登录,PHP模拟表单的post请求实现登录
  4. vscode 不能运行h5c3代码_让开发效率“飞起”的VS Code 插件
  5. r.java是什么_R.java文件介绍
  6. datatable 如何修改 某行 某列 的 字体颜色
  7. 输入框限制只能输入数字,正数、负数、0,最多两位小数;数字输入框可以输入负数,并最多保留两位小数;el-number-input去掉四舍五入和自动补齐小数;
  8. React开发(118):报错处理
  9. 前端学习(3204):复习类相关知识2
  10. [html] 百度、淘宝、京东移动端首页秒开是如何做到的?