浅谈Spring框架

浅谈Spring框架

1.Spring是如何简化开发的

  • 基于POJO的轻量级和最小侵入性编程
  • 通过依赖注入和面向接口实现送耦合
  • 基于切面和惯例进行声明式编程
  • 通过切面和模板减少模板化代码

!!!Spring 是一个框架,同时是一个容器还是一个生态
spring 使创建Java企业应用变得更容易,它提供了在企业环境中接受java语言所需的一切并可以根据应用程序需要灵活的创建多种体系

Spring是一个IOC和AOP的容器框架

IOC:控制反转
AOP:面向切面编程
容器:包含并管理应用对象的生命周期

Spring 事务的传播性

在这里插入图片描述
在这里插入图片描述

Spring事务的隔离性

在这里插入图片描述

spring事务失效的12种场景

  • 访问权限问题
    • 如果我们自定义的事务方法(即目标方法),它的访问权限不是public,而是 private、default 或 protected 的话,spring 则不会提供事务功能。
  • 方法用final修饰
    • spring 事务底层使用了 aop,也就是通过 jdk 动态代理或者 cglib,帮我们生成了代理类,在代理类中实现的事务功能。但如果某个方法用 final 修饰了,那么在它的代理类中,就无法重写该方法,而添加事务功能。
    • 注意:如果某个方法是 static 的,同样无法通过动态代理,变成事务方法。
  • 方法内部调用
    • 没有事务的方法在本类调用有事务的方法会导致事务失效
  • 未被Spring管理
  • 多线程调用
  • 表不支持事务
  • 错误的传播特性
  • 自己吞了异常
  • 手动抛了别的异常
  • 自定义回滚异常
  • 嵌套事务回滚多了

Spring 里面用到的设计模式

  1. 单例模式:Spring中的Bean默认情况下都是单例的。
  2. 工厂模式:工厂模式主要通过BeanFactory和ApplicaitonContext来生产Bean对象
  3. 代理模式:最常见的AOP的实现方式就是通过代理来实现
  4. 模板方式模式:主要是一些对数据库操作的类用到,比如JdbcTemplate,JpaTemplate,因为插叙数据库的建立连接,执行查询,关闭连接几个过程,非常使用于模板方式。

Spring Boot 的启动流程

  1. 准备环境,根据不同的环境创建不同的Environment
  2. 准备,加载上下文,为不同的环境选择不同的SpringContext,然后加载资源,配置Bean
  3. 初始化,这个阶段刷新Spring Context,启动应用
  4. 最后结束流程
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值