01 Spring 初识
2022-11-19 23:19:32 7 举报
01 Spring 初识
作者其他创作
大纲/内容
全名:Spring Framework(Spring框架)
类和接口的集合
通过这些类和接口协调来完成一系列的程序实现
又叫开发中的半成品
个人或组织定义了一系列的类和接口,提前定义好了一些实现,开发人员在这些类和接口的基础上,更专注的完成业务的实现
简化开发过程,提高开发效率
Java框架可以分为三层:表示层,业务层和物理层
Strusts和Spring就是表示层和业务层框架的强力代表
框架(Framework)是什么?
场景:网站流量小,只需一个应用,将所有功能都部署在一起,减少部署节点和成本
关键:用于简化CURD工作量的数据访问框架(ORM)
单一应用架构:
访问量逐渐增大
单应用增加机器带来的加速度越来越小
场景:
方案:将应用拆成不相干的几个应用,提升效率
关键:用于加速前端页面开发的Web框架(MVC)
垂直应用架构:【涉及到spring】
垂直应用越来越多
应用间交互变多
方案:抽取核心业务作为独立服务,形成稳定的服务中心
关键:提高业务复用及整合的分布式服务框架(RPC)
分布式服务架构:【涉及到spring】
服务越来越多
容量的评估问题
小服务资源的浪费问题明显
实时管理集群容量
提高集群利用率
增加一个调度中心,基于访问压力:
方案:
关键:提高机器利用率的调度和治理中心(SOA)
流动计算架构(或叫b style=\
架构(概念)的发展历程:
诞生的起因:最早的时候前端页面都是静态的,多个用户之间不能互动,由此催生出了 Servlet + JSP + JavaBean
Tomcat等web服务器都是它的实现,比如:Tomcat负责Servlet的创建、加载、销毁...一系列的实现
Servlet(Server Applet)+JSP:它是一个动态网页技术规范
JavaBean:处理逻辑+操作数据库
Servlet:接收请求、处理请求
JSP:负责展示的视图,展示给客户端
JavaBean:负责处理业务逻辑、操作数据库
https://www.processon.com/diagraming/6376f51d7d9c0806b80d4c25
它的技术分工、实现及示意图:
Servlet+JSP+JavaBean
它是一种设计模式 / 设计概念
Model,交互数据的载体,如:用户、人
View,展示
Controller,接收、响应请求控制器
它遵守单一职责原则
架构实现示意图如下:
MVC三层架构
过多的接口和依赖,入侵性强
在使用上比较麻烦
重量级框架
EJB
存在漏洞较多,且官网会公布其漏洞
学习成本高,但用到的少
版本迭代少
Struts2 已被弃用淘汰
SSH(Struts1/Struts2+Hibernate+Spring)
灵活
学习成本低
SSM(SpringMVC+Mybatis+Spring)
约定大于配置
大量减少配置文件
SpringBoot
Java主流架构技术(实现)演变之路
spring5中文手册:https://github.com/DocsHome/spring-docs/blob/master/SUMMARY.md
压缩包下载地址:https://repo.spring.io/list/libs-snapshot-local/org/springframework/spring/
源码地址:https://github.com/spring-projects/spring-framework
官网:https://spring.io/projects/spring-framework#overview
轻量级、模块化的Java开发框架
可以一站式构建企业级应用
解决企业级应用开发的业务逻辑层和其他各层的耦合问题
Spring负责基础架构,Java开发者可以专注于应用程序的开发
font color=\"#2196f3\
Spring为企业级开发提供的丰富的功能,底层都依赖于它的两个核心特性:
介绍:
spring是一个轻量级的开源框架
spring为了解决企业级应用开发的业务逻辑层和其他各层的耦合问题
IOC:控制反转
AOP:面向切面编程
容器:包含并管理应用对象的生命周期
spring是一个IOC和AOP的容器框架
简略核心解释:
Spring Framework:
1、Spring通过DI、AOP和消除样板式代码来简化企业级Java开发
2、Spring框架之外还存在一个构建在核心框架之上的庞大生态圈,它将Spring扩展到不同的领域,如Web服务、REST、移动开发以及NoSQL
3、b style=\
4、独立于各种应用服务器,基于Spring框架的应用,可以真正实现font color=\"#e57373\
5、Spring的IoC容器降低了业务对象替换的复杂性,提高了组件之间的解耦
6、Spring的AOP支持允许将一些通用任务如安全、事务、日志等进行集中式处理,从而提供了更好的复用
7、Spring的ORM和DAO提供了与第三方持久层框架的良好整合,并简化了底层的数据库访问
8、Spring的高度开发性,并不强制应用完全依赖于Spring,开发者可自由选用Spring框架的部分或全部
Spring框架的优势:
Spring介绍
Test:Spring的单元测试模块
Beans
Core
Context
SpEL:Spring表达式(expression)
Core Container:核心容器模块
AOP+Aspects:面向切面编程模块
Instrumentation:提供了class instrumentation支持和类加载器的实现来在特定的应用服务器上使用
Messaging:包括一系列的用来映射消息到方法的注解
Data Access/Integration:数据的获取/整合模块,包括了JDBC,ORM,OXM,JMS和事务模块
Web:提供面向Web整合特性
模块解释(由下至上):
Spring模块划分图
01 Spring 初识
0 条评论
回复 删除
下一页