Spring------简介

本文介绍了Spring框架的核心技术,包括XML解析(DOM4J和SAX),IoC(控制反转)和DI(依赖注入)的概念及实现方式,如属性注入、构造注入、静态工厂注入和实例工厂注入。此外,还提到了AOP(面向切面编程)、国际化、数据校验等其他关键特性。
摘要由CSDN通过智能技术生成

Spring

XML的解析方式

properties 配置文件 可以通过 Properties来解析

XML 可以通过 dom4j 或者 sax 进行解析

dom4j: 一次性将xml读取到内存,方便做数据的操作,不适用于过大的文件
采用 空间 换取 时间
sax : 边读便解析、适用于大文件的读取
采用 时间 换取 空间

dom4j 解析 XML

引入 dom4j 依赖

<dependency>
    <groupId>org.dom4j</groupId>
    <artifactId>dom4j</artifactId>
    <version>2.1.3</version>
</dependency>

Spring核心技术

IoC (Inverse Object Control) 控制反转
DI(Dependency Injection) 依赖注入
AOP : 面向切面编程

i18N: 国际化
validation : 数据校验
data binding : 数据绑定
type conversion : 类型转换
SpEL : Spring表达式

Ioc 控制反转

将对象的管理 交给 Spring 框架

<bean id="" class="" />
常见的属性
  • id : 用来设置 bean 的唯一值
  • class : 用来设置 bean 对应的 类
  • scope : 用来设置 bean 的作用范围,默认单例模式,如需多例,可以配置 prototype
  • lazy-init : 是否采用懒加载管理对象,默认 false
  • primary : 标记该对象是否是主要bean,解决容器中相同类型多个bean,根据类型获取报错问题
  • abstract : 标记该类是否允许构建对象
  • init-method :设置初始化方法
  • name : 用来设置 bean的名字,可以设置多个,多个名字用 逗号 分割

DI 依赖注入

给Spring管理的对象 中的属性注入值

依赖注入的方式有
  • 属性注入
  • 构造注入
  • 静态工厂注入
  • 实例工厂注入
属性注入
<bean id="" class="" >
	<property name="" .. />
</bean>

注入方式相对灵活,必须提供无参构造方法

不同类型的注入方式
  • 字面量注入
  • List集合
  • Set集合
  • 数组
  • Map集合
  • Properties
  • null
  • 特殊字符
构造注入
<bean id="" class="" >
	<constructor-arg index="" .../>
</bean>
  • index : 设置构造方法参数的顺序,从0开始
  • name : 设置构造方法中的参数名
  • type : 设置参数的类型
  • value : 设置参数值
  • ref : 设置参数值

构造注入需要通过有参构造完成对象的管理,注入的属性必须按照构造方法中提供的属性注入,灵活性不高

静态工厂注入
<bean id="" class="静态类" factory-method="静态方法" />

静态方法 要求不能有任何参数,且返回要管理的 目标对象

实例工厂注入
<bean id="xx" class="实例工厂类" />

<bean id="" factory-class="xx" factory-method="实例方法" /> 

实例方法 要求 和 静态方法 相同

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值