xml创建bean

GitHub Code

https://www.bilibili.com/video/BV1ht411g7Zu?p=4

步骤

  1. 创建XML定义bean

  2. 创建ClassPathXmlApplicationContext加载XML

  3. getBean获取bean

使用ApplicationContext需要引入的包

最简单的是直接引入springboot web,这里没必要引这么多

Spring MVC: How to Declare a Bean in Spring Application?

<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-context</artifactId>
  <version>5.2.2.RELEASE</version>
</dependency>

bean xml 3中创建bean的定义

bean xml 官方文档

全类名方式(反射)

img

工厂方法

静态工厂方法 or 实例工厂方法

静态工厂方法

img
img
img

实例工厂方法

img
img
img

FactoryBean

GitHub Code

实现org.springframework.beans.factory.FactoryBean方法

XML类型定义为CarFactoryBean,返回的是产生的Car类型

img
img

2种getBean的方法: id/类型

注入

属性注入

需要类有无参构造函数

img

构造器注入

对有参构造函数可以使用这个。

index是参数出现在构造方法参数列表里的位置

img

注入属性细节

特殊字符

img

嵌套bean

img

car3属于内部bean

img

为集合赋值

img
img

定义集合给不同的bean共享

还要加util的空间,用的时候再查吧

img

java.util.Properties

img
img
img

p命名空间 配置方法

要声明p空间的引入,用的时候再查吧

img
img

autowire(少用)

img

继承bean的值

img

抽象bean 作为模板

只能作为模板被继承,不能实例化

img
img

depends-on bean创建顺序

规定bean创建的顺序,多个前置bean可以逗号或空格 隔开。

和依赖bean之间不一定非要有依赖关系。

img

scope定义bean是否单例

还有几个scope和http有关

img

使用外部文件的值

xml里还要引入命名空间

GitHub Code

img
img

SpEL

img

字面量

img

使用其他bean,bean的属性、方法赋值

img
img

运算符

img
img

Last updated

Was this helpful?