spring xml实现bean对象(仅供自己参考)

对于spring xml来实现bean

具体代码:

复制代码
<?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 -->
    <!-- 这个的意思是有一个属性或者成员变量的 message ,
然后在使用setter注入的方法完成hello的注入-->
    <bean id="myBean" class="com.example.MyBean">
        <property name="message" value="Hello, Spring!" />
    </bean>

     <!-- 通过setter方法注入其他的bean,意思是,这个类中包含其他类的对象 -->
    <bean id="myDependentBean" class="com.example.MyDependentBean">
        <property name = "myBean" ref="myBean" />
    </bean>

    <!-- 定义一个依赖注入的 bean,使用的是构造函数的注入方式 -->
    <!-- 定一些基本类型也可以使用构造函数的初始化 -->
    <bean id="myDependentBean" class="com.example.MyDependentBean">
        <constructor-arg ref="myBean" />
    </bean>

</beans>

bean的作用域:单例和原型

单例(singleton):通过设置scope属性,来指定bean的作用域为单例模式,也就是说,所有的对象注入都是用的bean容器中那唯一一个对象。其他的对象都是这个对象的赋值,也就是一个对象=一bean容器中存放的对象

原型(prototype):通过设置scope属性,来指定bean的作用域为圆形模式,在自动注入的时候,bean容器会创建一个新的对象,把这个新的对象赋值给所需要的对象。这种作用域,也就是可以说bean容器中没有相对应的对象,只是在需要依赖注入的时候就地创建(仅我的猜想)。

bean的生命周期:

Spring Bean生命周期大致可以分为以下 5 个阶段:1.Bean 的实例化、2.Bean 属性赋值、3.Bean 的初始化、4.Bean 的使用、5.Bean 的销毁

相关推荐
爱读源码的大都督13 分钟前
为什么有了HTTP,还需要gPRC?
java·后端·架构
Lucky_Turtle32 分钟前
【Java Xml】Apache Commons Digester3解析
xml·java·apache
聪明的笨猪猪1 小时前
Java Redis “缓存设计”面试清单(含超通俗生活案例与深度理解)
java·经验分享·笔记·面试
FIavor.1 小时前
我发送给Apifox是http://localhost:9002/goods/getByUserName?name=张三 为什么会是500哪里错了?
java·服务器·网络协议·http
ID_180079054731 小时前
京东获取整站实时商品详情数据|商品标题|数据分析提取教程
java·开发语言
微露清风2 小时前
系统性学习C++-第五讲-内存管理
java·c++·学习
计算机毕业设计木哥2 小时前
计算机毕业设计选题推荐:基于SpringBoot和Vue的快递物流仓库管理系统【源码+文档+调试】
java·vue.js·spring boot·后端·课程设计
235162 小时前
【LeetCode】146. LRU 缓存
java·后端·算法·leetcode·链表·缓存·职场和发展
聪明的笨猪猪2 小时前
Java Redis “运维”面试清单(含超通俗生活案例与深度理解)
java·经验分享·笔记·面试
FIavor.2 小时前
怎么办这是Apifox里执行http://localhost:9002/goods/getByUserName?name=“张三“为什么我改了还是500?
java·网络·网络协议·http