Spring初体验

Spring初体验

关键字

java行业标准 万能胶 生态

简化开发的四个策略

  1. 基于POJO的轻量级和最小侵入性编程。

  2. 通过依赖注入和面向接口松耦合。

  3. 基于切面和惯性进行声明式编程。

  4. 通过切面和模板减少样板式代码。

Spring中的编程思想

Spring思想应用场景(特点)概括
OOPObject Oriented Programming(面向对象编程)用程序归纳总结生活中一切事务封装、继承、多态
BOPBean Oriented Programming(面向Bean编程)面向Bean(普通Java类)设计程序,解放程序员一切从Bean开始
AOPAspect Oriented Programming(面向切面编程)找出多个类中有一定规律的代码,开发是拆开,运行时再合并,面向切面编程,既面向规则编程解耦,专人做专事
IOCInversion of Control(控制反转)将new对象的动作交给Spring管理,并由Spring保存已创建的对象(IOC容器)转交控制权(控制反转)
DI/DLDependency Injection(依赖注入)或者Dependency Lookup(依赖查找)依赖注入、依赖查找,Spring不仅保存自己创建的对象,而且还保存对象与对象之间的关系,注入即赋值,主要三种方式构造方法、set方法、直接赋值自动赋值

AOP、IoC、DI之间的关系

依赖
依赖
DI
IoC
AOP

Spring注解编程发展历史

V1.x 注解驱动启蒙时代
V2.0 注解驱动过度时代
V2.5 引入了新的骨架式Annotation
V3.x 注解驱动黄金时代
V4.x 注解驱动完善时代
V5.x 注解驱动成熟时代

v1.x

  • @Transactional

  • @ManageResource

V2.0

  • @Required

  • @Repository

  • @Aspect

V2.5

  • @Service

  • @Controller

  • @RequestMapping

  • @ModelAttribute

  • @Resource

3.x

  • @Configuration

  • @Component

  • @ComponetScan

4.x

  • @Condition

  • @ComponetScans

  • @EventListener

5.x

  • (全面注解编程 作为Spring Boot 2.0底层支持)基摆脱xml配置

Spring系统架构核心模块

模块名称主要功能
spring-core依赖注入IoC与DI的最基本实现
spring-beansBean工厂与Bean的装配
spring-context定义Spring的Context上下文即IoC容器
spring-context-support对IoC容器的扩展支持,以及IoC子容器
spring-context-indexerSpring的类管理组件和Classpath扫描
spring-expressionSpring语言表达式
spring-aop面向切面编程的应用模块,整合Asm、CGLIB、JDKProxy
spring-aspects集成AspectJ、AOP应用框架
spring-instrument动态Class loadin模块

Spring数据访问与集成模块

模块名称主要功能
spring-jdbcSpring提供的JDBC抽象框架的主要实现模块,用于简化Spring JDBC操作
spring-txSpring JDBC事务控制实现模块
spring-orm主要集成Hibernate、Java Persistence API(JPA)和Java Data Objects(JDO)
spring-oxm将Java对象映射成XML数据,或者将XML数据映射成Java对象
spring-jmsJava Messaging Service能够发送和接收信息

Spring之Web模块

模块名称主要功能
spring-web提供最基础的Web支持,主要建立与核心容器之上,通过Servlet或者Listeners来初始化IoC容器
spring-webmvc实现了Spring MVC(model view conroller)的Web应用
spring-websocket主要是与Web前端的全双工通讯的协议
spring-webflux一个新的非阻塞函数式Reactive Web框架,可以用来建立异步的、非阻塞、事件驱动的服务

Spring之通信报文模块

模块名称主要功能
spring-messaging从Spring4开始新加入一个模块,主要职责是为Spring框架集成一些基础的报文传送应用

Spring之集成测试模块

模块名称主要功能
spring-test主要为单元测试提供支持

Spring之集成兼容模块

模块名称主要功能
spring-framework-bomBill of Materials 解决Spring的不同模块依赖版本不同问题

spring各个模块之间的依赖关系

spring-core
spring-beans
spring-aop
spring-expssion
spring-context
spring-instrument
spring-tx
spring-oxm
spring-jdbc
spring-jms
spring-context-support
spring-web
spring-orm
spring-webmvc
spring-websoket
spring-aspects
spring-webflux
spring-test

Spring版本命名规则

描述方式说明含义
Snapshot快照版尚不稳定,处于开发中的版本
Alpha内部版严重缺陷基本完成修复,但需要完整的功能测试
Beta测试版相对Alpha又很大的改进,消除了严重的错误,但还是存在缺陷
RC终测版Release Candidate(最终测试)即将作为正式版本发布
Demo演示版只集成了正式版部分功能升级,无法升级
SPSP1是service pack的意思,表示升级包
Release稳定版功能相对稳定,可以对外发行,但有时间限制
Trial试用版试用版,仅对部分用户使用
Full Version完整版即正式版,已发布
Unregistered未注册有功能或时间限制的版本
Standard标准版能满足正常使用的版本
Lite精简版只含正式版的核心功能
Enhance增强版正式版功能优化的版本
Ultimate旗舰版在标配版升级体验感更好的版本
Professional专业版针对更高要求功能、专业性更强的使用群体发行的版本
Free自由版自由免费使用的版本
Upgrade升级版有功能增强或修复已知bug
Retail零售版单独发售
Cardware共享版公用许可证(IOS签证)
LTS维护版该版本需要长期维护
GA正式版代表广泛可用的稳定版(General Availability)
M终测版M是Milestone的意思,具有一些全新的功能或具有里程碑意义的版本
Author
盒子先生呀
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值