JAVA(spring-ioc)

框架

软件工程框架:经过验证的,具有一定功能的,半成品软件

框架的作用
提高开发效率
增强可重用性
提供编写规范
节约维护成本
解耦底层实现原理

Spring

Sping是分层的javaSE/EE应用 full 轻量级 开源的 半成品框架,以ioc和AOP为内核
分层:视图层,逻辑层,持久层

Spring的体系结构
Spring体系结构

底层是核心容器
Beans
Core
Context
SpringEI表达式
中间层技术
AOP
Aspects
应用层技术
数据访问与数据集成
Web集成
Web实现
基于Test测试
笔试: 事务应该具有4个属性:原子性、一致性、隔离性、持久性。

Spring优势

方便解耦,简化开发
方便集成各种优秀框架
方便程序的测试
切面编程的支持
声明式事务的支持@Transactional
降低JavaEE API的使用难度
IOC 反转控制
本质的功能就是:就是由 Spring IOC 容器来负责对象的生命周期和对象之间的关系

Bean标签说明

id:Bean实例在Spring容器中的唯一标识
class:Bean的全限定名称
scope: 范围配置,spring默认是单例模式。

生命周期

1.当scope的取值为singleton时(系统默认的)
Bean的实例化个数:1个
Bean的实例化时机:当Spring核心文件被加载时,实例化配置的Bean实例
Bean的生命周期:
对象创建:当应用加载,创建容器时,对象就被创建了
对象运行:只要容器在,对象一直活着
对象销毁:当应用卸载,销毁容器时,对象就被销毁了

2.当scope的取值为prototype时
Bean的实例化个数:多个
Bean的实例化时机:当调用getBean()方法时实例化Bean
对象创建:当使用对象时,创建新的对象实例
对象运行:只要对象在使用中,就一直活着
对象销毁:当对象长时间不用时,被 Java 的垃圾回收器回收了 ( jvm gc垃圾回收)
注意: 以上bean对象实例化都是spring调用对象的无参构造方法
还有两种方法:工厂实例方法,工厂静态方法

DI 依赖注入

两种方式 set注入 构造注入

注解开发
注解 说明
@Component 使用在类上用于实例化Bean
@Controller 使用在web层类上用于实例化Bean
@Service 使用在service层类上用于实例化Bean
@Repository 使用在dao层类上用于实例化Bean
@Autowired 使用在字段上用于根据类型依赖注入
@Qualifier 结合@Autowired一起使用用于根据名称进行依赖注入
@Resource 相当于@Autowired+@Qualifier,按照名称进行注入
@Value 注入普通属性

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值