第一代:基本XML配置
第二代:基于注解配置
第三代:基于Java配置

配置spring弊端
1.大量xml配置文件
2.配置繁烦
3.包冲突

Springboot核心
1.起步依赖(maven)
2.自动配置(AutoConfigure)
3.命令行界面
4.Actuator(监控)

Springboot引导类:
1.@EnableAutoConfiguration(开启Springboot自动配置功能)
2.@Configuration(标识当前类是一个配置类)
3.@ComponentScan(启用组件扫描,默认将引导类所在的目录作为根目录扫描)

SpringMVC
1.包扫描(ComponentScan)
2.类实例化
3.依赖注入(Autowrite)
4.映射处理

Spring3中为Bean定义了5中作用域scope=调整作用域
1.singleton(单例,默认值)
IOC容器启动会启用方法创建对象放到IOC容器中,以后每次获取就直接从容器(map.get())中拿
2.prototype(多实例)
IOC容器启动并不会调用方法创建对象放在容器中,每次获取的时候才会调用方法创建对象
3.request(同一次请求创建一个实例)
4.session(同session创建一个实例)
5.global session

懒加载(@Lazy):容器启动不创建对象,第一次使用(获取)Bean创建对象,并初始化
单实例bean:默认在容器启动的时候创建对象

Spring事务
1.@Transactional事务注解如何产生作用?
通过AOP动态代理产生(常用于事务,日志管理,权限)
2.有哪些不同类型事务?
3.分别有不同效果?
4.spring是如何控制事务的提交与回滚?try/catch(rockback)

AOP:面向切面编程(动态代理)
核心原理:使用动态代理的设计模式在执行方法前后或出现异常做加入相关逻辑
(常用于事务,日志管理,权限)
指程序运行期间动态的将某段代码切入到指定方法指定位置进行运行的编程方式。
1.导入aop模块(spring-aspects)
2.定义一个业务逻辑类,在业务逻辑运行的时候将日志进行打印(方法之前,方法进行,方法异常,方法结束)
3.定义一个日志切面类(aop类):切面类里面的方法需要动态感知业务逻辑类运行
前置通知(@Before):目标方法运行前运行
后置通知(@After):目标方法运行后运行
返回通知(@AfterReturning):目标方法运行正常运行
异常通知(@AfterThrowing):目标方法运行异常后运行
环绕通知(@Around):动态代理,手动推进目标方法运行(joinPoint.procced())
4.给切面类的目标方法标注何时何地运行(标注通知注解)
5.将切面类和业务逻辑类(目标方法所在类)都加入到容器中
6.定义Spring哪个类是切面类(给切面类加入一个注解:@Aspect)
7.关键一步:当前的配置类加入@EnableAspectJAutoProxy(开启基于注解aop模式)

转载于:https://www.cnblogs.com/ningshare/p/10649882.html

Spring知识点总结相关推荐

  1. 80%以上Javaer可能不知道的一个Spring知识点

    点击蓝色"程序猿DD"关注我哟 加个"星标",不忘签到哦 来源:字节观 关注我,回复口令获取可获取独家整理的学习资料: - 001 :领取<Spring ...

  2. Spring知识点总结-3

    Spring知识点总结-3:拦截 http://tianya23.blog.51cto.com/1081650/417035 http://tianya23.blog.51cto.com/108165 ...

  3. Spring知识点记录

    Spring知识点 1. Spring简介(此章略过) 1.1 Spring概述 1.2 Spring家族 1.3 Spring Framework 2. IOC 2.1 IOC容器 2.2 基于XM ...

  4. 作为一名Java程序员,这些Spring知识点面试官常考

    点击蓝色"程序猿DD"关注我 回复"资源"获取独家整理的学习资料! 作者 | 丸纸 来源 | 极客时间 毋庸置疑,Spring 早已成为 Java 后端开发事实 ...

  5. 这应该是最通俗易懂的一篇Spring知识点总结了

    由于Spring家族的东西很多,一次性写完也不太现实.所以这一次先更新Spring「最核心」的知识点:AOP和IOC 无论是入门还是面试,理解AOP和IOC都是非常重要的.在校招的时候,我没被问过My ...

  6. 啃完这些 Spring 知识点,我竟吊打了阿里面试官(附面经 + 笔记)

    前言 又逢"金九银十",年轻的毕业生们满怀希望与忐忑,去寻找.竞争一个工作机会.已经在职的开发同学,也想通过社会招聘或者内推的时机争取到更好的待遇.更大的平台. 然而,面试人群众多 ...

  7. Spring知识点回顾1

    在结束校招之后,一直忙着自己的毕业课题(物联网方向),已经半年没有接触到Java Web的代码了,5月份就要入职某知名通信设备商了,岗位为后端开发工程师,因此将Spring方面的知识点重新复习下,希望 ...

  8. Spring知识点总结-2

    2019独角兽企业重金招聘Python工程师标准>>> 使用Spring注解来注入属性 1.1. 使用注解以前我们是怎样注入属性的 类的实现:Java代码 public class ...

  9. Spring知识点提炼

    原文出处: 朱小厮 1. Spring框架的作用 轻量:Spring是轻量级的,基本的版本大小为2MB 控制反转:Spring通过控制反转实现了松散耦合,对象们给出它们的依赖,而不是创建或查找依赖的对 ...

  10. Spring 知识点详解

    1.Spring 1.1.简介 Spring:春天------>给软件行业带来了春天! 2002,首次推出了Spring框架的雏形: interface21框架! Spring框架即以inter ...

最新文章

  1. vantui框架_vue移动端优秀框架收集
  2. shell input value from console
  3. 国外centos服务器配置epel源
  4. 移动端开发高清效果和多屏适配
  5. UnisGuard防篡改产品了解
  6. soapui返回值类型都有哪些_法兰的类型都有哪些以及法兰的设计
  7. 自己写的.Net(C#)代码×××
  8. 不止 JavaScript 与 React,前端程序员必备的 9 大技能!
  9. complete_code_Chapter1
  10. 微服务架构实战篇(五):Spring boot2.x + Guava 并使用RateLimiter实现秒杀限流demo
  11. 夏宇闻《Verilog数字系统设计教程》 - 第1章 Verilog的基本知识
  12. 代码比较工具——DiffMerge的安装教程
  13. 微信小程序学习资料——转载
  14. 汽车驾驶 - 侧方停车
  15. ACM_贪心(HDU2037HDU1789)
  16. 记录五年前的天马行空的想象
  17. 乐吾乐2D可视化为智慧水务可视化赋能(二)
  18. 第一遍Java学习笔记
  19. Dad34 Java对象的内存形式
  20. 2012年重要的软件开发发展

热门文章

  1. 【图像处理】基于matlab GUI数字图像处理平台【含Matlab源码 381期】
  2. SPSS 项目分析(图文+数据集)【SPSS 032期】
  3. python前端工资_前端的工资分布情况-你又拖后退了吗?
  4. Eclipse 格式化代码且不影响注释
  5. python: 从txt文件中读入数组
  6. python:np.vstack, np.hstack
  7. vsftp如何确定地址_VSFTP配置参数详解
  8. LOL暗影岛服务器维修,LOL各大区服务器的地点
  9. linux启动python项目_java项目部署Linux服务器几种启动方式总结经验
  10. sublime3 多行编辑.摘抄