Spring实战之Bean的作用域singleton和prototype用法分析

作者:cakincqm 时间:2023-03-23 20:48:37 

本文实例讲述了Spring实战之Bean的作用域singleton和prototype用法。分享给大家供大家参考,具体如下:

一 配置


<?xml version="1.0" encoding="GBK"?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns="http://www.springframework.org/schema/beans"
 xsi:schemaLocation="http://www.springframework.org/schema/beans
 http://www.springframework.org/schema/beans/spring-beans-4.0.xsd">
 <!-- 配置一个singleton Bean实例 -->
 <bean id="p1" class="org.crazyit.app.service.Person"/>
 <!-- 配置一个prototype Bean实例 -->
 <bean id="p2" class="org.crazyit.app.service.Person"
  scope="prototype"/>
 <bean id="date" class="java.util.Date"/>
</beans>

二 Bean


package org.crazyit.app.service;
public class Person
{
 private int age;
}

三 测试类


package lee;
import org.springframework.context.*;
import org.springframework.context.support.*;
public class BeanTest
{
public static void main(String[] args)throws Exception
{
 // 以类加载路径下的beans.xml文件创建Spring容器
 ApplicationContext ctx = new
  ClassPathXmlApplicationContext("beans.xml"); // ①
 // 判断两次请求singleton作用域的Bean实例是否相等
 System.out.println(ctx.getBean("p1")
  == ctx.getBean("p1"));
 // 判断两次请求prototype作用域的Bean实例是否相等
 System.out.println(ctx.getBean("p2")
  == ctx.getBean("p2"));
 System.out.println(ctx.getBean("date"));
 Thread.sleep(1000);
 System.out.println(ctx.getBean("date"));
}
}

四 测试结果

true
false
Thu Sep 19 20:56:59 CST 2019
Thu Sep 19 20:56:59 CST 2019

希望本文所述对大家java程序设计有所帮助。

来源:https://blog.csdn.net/chengqiuming/article/details/101036122

标签:Spring,Bean,作用域
0
投稿

猜你喜欢

  • SpringMvc接收参数方法总结(必看篇)

    2022-10-02 12:28:54
  • C# 通过NI-VISA操作Tektronix TBS 2000B系列示波器的实现步骤

    2023-11-02 01:44:38
  • Android优化之电量优化的实现

    2023-08-20 07:57:25
  • Java网络通信中ServerSocket的设计优化方案

    2023-06-14 08:25:53
  • Android Scroll实现弹性滑动_列表下拉弹性滑动的示例代码

    2022-02-07 16:01:49
  • JVM内存参数配置详解

    2022-05-20 19:17:57
  • Android编程之DatePicker和TimePicke简单时间监听用法分析

    2022-07-04 00:42:24
  • 详解JAVA里面获取map的key和value的方法

    2023-04-27 03:11:50
  • springboot+mybatis-plus 两种方式打印sql语句的方法

    2022-12-29 13:41:11
  • C#实现滑动开关效果

    2023-11-26 22:18:29
  • Java查找不重复无序数组中是否存在两个数字的和为某个值

    2023-08-22 16:44:40
  • 百度地图API提示230 错误app scode码校验失败的解决办法

    2022-02-17 11:48:10
  • SpringBoot Actuator未授权访问漏洞修复详解

    2022-03-30 16:43:28
  • Android编程开发之性能优化技巧总结

    2022-08-26 13:23:00
  • Java程序测试上传Maven工程代码示例解析

    2022-01-21 18:43:25
  • android教程之textview解析带图片的html示例

    2023-10-04 13:58:47
  • java开发CPU流水线与指令乱序执行详解

    2023-07-01 19:59:23
  • Unity3d使用FairyGUI 自定义字体的操作

    2022-05-29 16:57:27
  • C#下使用XmlDocument操作XML详解

    2022-08-27 16:38:53
  • Kotlin下Rxjava的基础用法及流式调用示例详解

    2022-08-09 18:20:15
  • asp之家 软件编程 m.aspxhome.com