《Spring敲门砖之基础教程第一季》 第一章 概要介绍

百度百科say:

Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson创建。简单来说,Spring是一个分层的JavaSE/EEfull-stack(一站式) 轻量级开源框架。点击查看

WiKi say:

Spring Framework 是一个开源的Java/Java EE全功能栈(full-stack)的应用程序框架,以Apache许可证形式发布,也有.NET平台上的移植版本。该框架基于 Expert One-on-One Java EE Design and Development(ISBN 0-7645-4385-7)一书中的代码,最初由Rod Johnson和Juergen Hoeller等开发。Spring Framework提供了一个简易的开发方式,这种开发方式,将避免那些可能致使底层代码变得繁杂混乱的大量的属性文件和帮助类。点击查看

看完啦网络解说,结合我的认识与总结资料分享一下观点;

下面我们say:

就像维基百科说的,spring 的全部名称是spring framwork。它就是一个由名字叫 Rod Johnson的大神,为了解决J2EE系统框架臃肿、低效、脱离苦海而最终形成的一个框架,此框架是一个轻便、灵巧,易于开发、测试和部署的轻量级开发框架,它为企业开发人员带来了极大的便利。spring能做很多事情,它重点服务领域是J2EE企业应用,它带来的是从上到下的贯穿整个项目,从表现层,业务层再到持久层,可以说它都有胜任的地方。

Spring是目前为止最流行的框架之一,来自全世界几百万的开发人员在利用它的特性进行项目建造,它作为一门轻量级、开源的项目架构,更会引来全世界的程序爱好者的关注,可以通过研究源码,了解Spring原理,从而更加灵活快捷的使用它。spring是为了解决企业级开发的复杂性而生的,我们通过使用普通的POJO(ps可以不遵循JavaBean规范)就能使用它,避免了传统EJB的臃肿,可以做到松耦合,使我们只关注业务的实现,大大简化JAVA的开发工作量。

spring框架图

Spring的使用有哪些主要特性值的关注呢?

1.使用IOC容易解耦

Spring强大的功能之一就是IOC控制反转也称作依赖注入Dependency Injection (DI),通过在容器里配置JavaBean就可以管理我们的对象,从此我们再也不用担心单例或者多例,也不用在去new一个对象,然后一个一个set属性了,通过Spring一步到位,你只要负责上层应用的实现就可。
2.面向切面编程AOP
Spring提供了基于OOP的AOP的面像切面功能,它引入了横切关注点功能,即我们在开发过程中一些通用的如日志,安全,事务管理在很多地方都要用到,那么我们把它们拿出来,给每一个需要的地方做一个标记点,当他们要用的时候主动来这些功能就可以了,从而可以使应用对象更加关注自己业务逻辑,其他的交给其他应用完成。

其他还有一些特性:如声明式事务、集成测试、持久化处理、兼容性强便于整合,此外还提供了大量的JAVA API给我们使用,可以说,Spring真的是匠心独运,巧夺天工,我们要感谢Rod Johnson等人的无私奉献。

通过使用Spring,我们能得体会到什么呢?

1.低侵入式设计,代码污染极低,我们可以通过使用pojos来开发应用,无需运行在EJB或者其它重量级的容器里。

2.它易于集成第三方应用如ORM frameworks, logging frameworks, JEE, Quartz and JDK timers, 其他的视图技术等,无排它性。.

2.独立于各种应用服务器,具有java根本特性可移植性强,基于Spring框架的应用,可以真正实现Write Once,Run Anywhere的承诺。

4.Spring的DI机制降低了业务对象替换的复杂性,提高了组件之间的解耦。

5.Spring的AOP面向切面编程,支持允许将一些通用任务如安全、事务、日志等进行集中式管理,从而提供了更好的复用

6.Spring并不强制应用完全依赖于Spring,开发者可自由选用Spring框架的部分或全部,按需分配。

总结一下:

本章我们主要介绍了spring的基本概要,知道spring从哪里来到哪里去,他的主要特性IOC和AOP等其它特性,以及阐述了spring在企业级开发能给我们带来的便利什么,至于sping的七大管理模块后面我们会分门别类的进行细致的讲解,今天就到这里,谢谢大家。如果你喜欢本文,请关注下面公众号获取最新资讯文章。

时间: 2024-10-12 20:07:31

《Spring敲门砖之基础教程第一季》 第一章 概要介绍的相关文章

Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现

自Spring Cloud Alibaba发布第一个Release以来,就备受国内开发者的高度关注.虽然Spring Cloud Alibaba还没能纳入Spring Cloud的主版本管理中,但是凭借阿里中间件团队的背景,还是得到不少团队的支持:同时,由于Spring Cloud Alibaba中的几项主要功能都直指Netflix OSS中的重要组件,而后者最近频繁宣布各组件不在更新新特性,这使得Spring Cloud Alibaba关注度不断飙升,不少开发者或团队也开始小范围试水.笔者对此

Spring Cloud Alibaba基础教程:支持的几种服务消费方式(RestTemplate、WebClient、Feign)

通过<Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现>一文的学习,我们已经学会如何使用Nacos来实现服务的注册与发现,同时也介绍如何通过LoadBalancerClient接口来获取某个服务的具体实例,并根据实例信息来发起服务接口消费请求.但是这样的做法需要我们手工的去编写服务选取.链接拼接等繁琐的工作,对于开发人员来说非常的不友好.所以接下来,我们再来看看除此之外,还支持哪些其他的服务消费方式. 使用RestTemplate 在之前的例子中,已经使用过R

Spring Cloud Alibaba基础教程:Nacos配置的多文件加载与共享配置

前情回顾: <Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现> <Spring Cloud Alibaba基础教程:支持的几种服务消费方式> <Spring Cloud Alibaba基础教程:使用Nacos作为配置中心> <Spring Cloud Alibaba基础教程:Nacos配置的加载规则详解> <Spring Cloud Alibaba基础教程:Nacos配置的多环境管理> 对于Nacos作为配置中

Spring Cloud Alibaba基础教程:Nacos的数据持久化

前情回顾: <Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现> <Spring Cloud Alibaba基础教程:支持的几种服务消费方式> <Spring Cloud Alibaba基础教程:使用Nacos作为配置中心> <Spring Cloud Alibaba基础教程:Nacos配置的加载规则详解> <Spring Cloud Alibaba基础教程:Nacos配置的多环境管理> <Spring C

通过游戏学python 3.6 第一季 第九章 实例项目 猜数字游戏--核心代码--猜测次数--随机函数和屏蔽错误代码--优化代码及注释--简单账号密码登陆--账号的注册查询和密码的找回修改--锁定账号--锁定次数--菜单功能&#39;menufile

通过游戏学python 3.6 第一季 第九章 实例项目 猜数字游戏--核心代码--猜测次数--随机函数和屏蔽错误代码--优化代码及注释--简单账号密码登陆--账号的注册查询和密码的找回修改--锁定账号--锁定次数--菜单功能'menufile 1 #猜数字--核心代码--猜测次数--随机函数和屏蔽错误代码---优化代码及注释--简单账号密码登陆--账号的注册查询和密码的找回修改--锁定账号--锁定次数--菜单功能'menufile' 2 #!usr/bin/env python 3 #-*-c

Spring Cloud Alibaba基础教程:Nacos配置的加载规则详解

前情回顾: <Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现> <Spring Cloud Alibaba基础教程:支持的几种服务消费方式(RestTemplate.WebClient.Feign)> <Spring Cloud Alibaba基础教程:使用Nacos作为配置中心> 上一篇,我们学习了如何在Nacos中创建配置,以及如何使用Spring Cloud Alibaba的Nacos客户端模块来加载配置.在入门例子中,我们只配

Spring Cloud Alibaba基础教程:Sentinel使用Apollo存储规则

上一篇我们介绍了如何通过Nacos的配置功能来存储限流规则.Apollo是国内用户非常多的配置中心,所以,今天我们继续说说Spring Cloud Alibaba Sentinel中如何将流控规则存储在Apollo中. 使用Apollo存储限流规则 Sentinel自身就支持了多种不同的数据源来持久化规则配置,目前包括以下几种方式: 文件配置 Nacos配置 ZooKeeper配置 Apollo配置 本文我们就来一起动手尝试一下,如何使用Apollo来存储限流规则. 准备工作 下面我们将同时使用

Python基础教程(第六章 抽象)

本文内容全部出自<Python基础教程>第二版,在此分享自己的学习之路. ______欢迎转载:http://www.cnblogs.com/Marlowes/p/5351415.html______ Created on Xu Hoo 本章将会介绍如何将语句组织成函数,这样,你可以告诉计算机如何做事,并且只需要告诉一次.有了函数以后,就不必反反复复像计算机传递同样的具体指令了.本章还会详细介绍参数(parameter)和作用域(scope)的概念,以及地柜的概念及其在程序中的用途. 6.1

Python基础教程(第五章 条件、循环和其他语句)

本文内容全部出自<Python基础教程>第二版,在此分享自己的学习之路. ______欢迎转载:http://www.cnblogs.com/Marlowes/p/5329066.html______ Created on Xu Hoo 读者学到这里估计都有点不耐烦了.好吧,这些数据结构什么的看起来都挺好,但还是没法用它们做什么事,对吧? 下面开始,进度会慢慢加快.前面已经介绍过了几种基本语句(print语句.import语句.赋值语句).在深入介绍条件语句和循环语句之前,我们先来看看这几种基