前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Spring系列之初识Spring Spring概述

Spring系列之初识Spring Spring概述

作者头像
一只胡说八道的猴子
发布2020-09-27 10:31:49
6750
发布2020-09-27 10:31:49
举报

初始Spring

啥是Spring? 下面这个就是Spring

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

Spring当然不是上面那个Spring,Spring之所以命名为Spring是因为这个开源的轻量级的开源框架的出现给软件行业带来了春天,促进了软件行业的发展 Spring的理念:整合现有的框架技术,使技术更加实用,是一个大杂烩

Spring的相关概念

1.Spring是分层的javaEE/SE应用full-stack轻量级开源框架,以IOC(inverse of control:反转控制 aspect oriented programming:面向切面编程)和AOP为内核 在这里我写简单讲解一下IOC,至于aop我之后的文章再坐叙述 *(一位大牛把IOC和DI讲解的十分通俗易懂,链接如下:http://jinnianshilongnian.iteye.com/blog/1413846,大家伙可以去看看 IOC(控制反转):是一种设计思想,而不是一种技术。其主要内容就是把创建对象的任务交给Spring去管理,把对象加入到Spring提供的IOC容器中,由容器进行管理,而不是由对象内部进行管理设置。 所有的类都会在spring容器中登记,告诉spring你是个什么东西,你需要什么东西,然后spring会在系统运行到适当的时候,把你要的东西主动给你,同时也把你交给其他需要你的东西。所有的类的创建、销毁都由 spring来控制,也就是说控制对象生存周期的不再是引用它的对象,而是spring。对于某个具体的对象而言,以前是它控制其他对象,现在是所有对象都被spring控制,所以这叫控制反转。**

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

DI(Dependency Injection):oC的一个重点是在系统运行中,动态的向某个对象提供它所需要的其他对象。这一点是通过DI(Dependency Injection,依赖注入)来实现的。比如对象A需要操作数据库,以前我们总是要在A中自己编写代码来获得一个Connection对象,有了 spring我们就只需要告诉spring,A中需要一个Connection,至于这个Connection怎么构造,何时构造,A不需要知道。在系统运行时,spring会在适当的时候制造一个Connection,然后像打针一样,注射到A当中,这样就完成了对各个对象之间关系的控制。A需要依赖 Connection才能正常运行,而这个Connection是由spring注入到A中的,依赖注入的名字就这么来的。那么DI是如何实现的呢? Java 1.3之后一个重要特征是反射(reflection),它允许程序在运行的时候动态的生成对象、执行对象的方法、改变对象的属性,spring就是通过反射来实现注入的。

除了上面的IOC和AOP,Spring还有其他许多优良特性 1.非侵入式:基于Spring开发应用的对象不一定要使用Spring中的API 2.容器:Spring是一个容器,由Spring管理容器中对象的生命周期 3.依赖注入DI(Dependency Injection):不需要再通过xxxSet()方法来设置对象的属性值,而是通过配置的方式来实现 4.提供了展现层 SpringMVC 和持久层 Spring JDBCTemplate 以及业务层事务管理等众多的企业级应用技术,整合了许多开源世界上许多优秀的第三方框架与资源库,逐渐成为使用最多的Java EE 企业应用开源框架。 5.声明式事务的支持:将我们从复杂的事务管理代码中解放出来。提高开发效率 6.方便程序的测试:可以用非容器依赖的编程方式进行几乎所有的测试 7.降低Java EE API的使用难度:Spring对javaee 的API进行了简单的封装(JDBC,远程调用等),使APID的使用难度大大降低

Spring体系结构图

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

**

Spring框架分为四大模块

**:

Core核心模块。负责管理组件的Bean对象

spring-beans-4.0.0.RELEASE.jar

spring-context-4.0.0.RELEASE.jar

spring-core-4.0.0.RELEASE.jar

spring-expression-4.0.0.RELEASE.jar

面向切面编程

spring-aop-4.0.0.RELEASE.jar

spring-aspects-4.0.0.RELEASE.jar

数据库操作

spring-jdbc-4.0.0.RELEASE.jar

spring-orm-4.0.0.RELEASE.jar

spring-oxm-4.0.0.RELEASE.jar

spring-tx-4.0.0.RELEASE.jar

spring-jms-4.0.0.RELEASE.jar

Web模块

spring-web-4.0.0.RELEASE.jar

spring-webmvc-4.0.0.RELEASE.jar

spring-websocket-4.0.0.RELEASE.jar

spring-webmvc-portlet-4.0.0.RELEASE.jar

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

以上就是Spring概述,这也是我Spring系列的第一篇,后面我会继续更新,写作不易,请各位老铁点个赞支持一下,觉得有帮助的也可以收藏呀,我会经常更新文章,也可以关注我呀

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-09-14 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 初始Spring
  • Spring的相关概念
  • Spring体系结构图
  • Spring框架分为四大模块
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档