spring学习1

IOC(Inversion Of Control)——控制反转

反转资源获取的方向。传统的方式为组件向容器发起请求查找资源。而IOC中容器主动将资源发送给管理的组件,组件只需要选择一种合适的方式来接受资源。
首先进行IOC容器的实例化,然后才能进行Bean的实例化。

Spring提供两种IOC类型容器:

  • BeanFactory:基本实现
  • ApplicationContext:更多高级功能。

DI(Dependency Injection)——依赖注入

组件以一些预定好的方式接受容器的资源注入。和IOC是一个概念。

  • 属性注入 :setter方法
  • 构造器注入:通过构造方法实现注入
  • 工厂方法注入

Bean配置(通过xml文件)

class通过反射的方式在IOC容器中创建Bean,所以要求必须有class的无参数构造器。
写bean.xml时
id是bean的名称,在IOC容器中需唯一。id可以指定多个名字,名字间用逗号,分号或空格分隔。若无指定,将自动设置为类名。
class为全类名。
index-参数顺序 type-参数类型
在这里插入图片描述
property-引用属性(使用内部Bean时,通过级联属性赋值) ref-建立bean之间的引用关系
在这里插入图片描述
在这里插入图片描述
list set map配置属性集合在这里插入图片描述
通过p命名空间为Bean的属性赋值
在这里插入图片描述
利用IOC容器自动装配,需要在Bean的autowire属性里指定自动装配的模式。装配会涉及Bean中所有的属性,且只能选择两种方式之一。不及手动装配细节。
byType:根据类型自动装配
byName:根据名称自动装配

Bean配置的继承与依赖

在这里插入图片描述
在这里插入图片描述
继承时可以选择继承,依赖时必须全部依赖。

Bean配置的作用域

在这里插入图片描述

Bean配置的生命周期

在这里插入图片描述

Bean配置(注解方式)

通过扫描组件,实例化具有特定注解的组件。
基本组件包括:
@Component:通用注解,对那些比较中立的类进行注释。
就是说把这个类交给Spring管理,由于不好说这个类属于哪个层面,就用@Component。
@Respository:持久层
@Service:服务层
@Controller:表现层

@Autowired:自动装配
在这里插入图片描述

@NoArgsConstructor为一个实体类构造无参数构造器。另:
@AllArgsConstructor 构造全参数构造器
@Data 为类中参数自动生成相关的方法,get,set,参数类型的默认方法等
@Builder 为类生成相对略微复杂的构建器API

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值