【Spring】学习Spring框架那点小事儿

Spring作者:Rod Johnson

Rod Johnson 是一位软件开发人员和作家,他在软件开发领域有着广泛的影响力。他出生于澳大利亚,拥有计算机科学和音乐双学位(能写出有优雅的代码一定有艺术细胞)

Rod Johnson 在 2002 年出版了《Expert One-on-One J2EE Design and Development》一书,提出了轻量级容器的概念,为 Spring 框架的诞生奠定了基础。他在 2003 年创建了 Spring 框架,并成立了 SpringSource 公司,专门开发和维护 Spring 框架。SpringSource 公司在 2009 年被 VMware 公司收购,Rod Johnson 也加入了 VMware 公司,继续领导 Spring 框架的开发工作。

除了 Spring 框架,Rod Johnson 还参与了其他一些开源项目,如 Apache Tomcat、Apache Geronimo 等。他还出版了多本关于软件开发的书籍,如《Expert One-on-One J2EE Design and Development》、《J2EE Development without EJB》等。

Rod Johnson 在软件开发领域提出了许多重要的概念和思想,如轻量级容器、依赖注入、AOP 等,这些概念和思想已经被广泛应用于各种软件开发框架中。他的工作对软件开发领域产生了深远的影响,尤其是在 Spring 框架的开发和推广方面。

总之,Rod Johnson 是一位杰出的软件开发人员和作家,他对软件开发领域做出了重要的贡献,尤其是在 Spring 框架的开发和推广方面。

Spring介绍

Spring 框架是一个开源的 Java 应用程序框架,它提供了全面的解决方案,用于开发企业级 Java 应用程序。Spring 框架的核心是一个轻量级的容器,它提供了依赖注入、AOP、事务管理等功能。Spring 框架还提供了许多其他的模块,如 MVC 框架、JDBC 抽象层、ORM 集成、消息传递、Web 服务等,这些模块可以单独使用,也可以组合使用,以满足不同的需求。

Spring 框架的设计理念是“约定优于配置”,这意味着它提供了一套默认的配置,开发人员可以根据需要进行修改。Spring 框架还提供了灵活的配置方式,包括 XML 配置、Java 配置和基于注解的配置。

Spring 框架的优点包括:

  1. 轻量级:Spring 框架是一个轻量级的容器,它不需要大量的资源来运行。

  2. 灵活性:Spring 框架提供了灵活的配置方式,包括 XML 配置、Java 配置和基于注解的配置。

  3. 模块化:Spring 框架提供了许多模块,这些模块可以单独使用,也可以组合使用,以满足不同的需求。

  4. 易于测试:Spring 框架提供了易于测试的 API,可以方便地进行单元测试和集成测试。

  5. 社区支持:Spring 框架有一个庞大的社区,提供了大量的文档、教程和示例代码,可以帮助开发人员快速上手。

Spring 框架的发展历程

  1. 2002年,Rod Johnson 出版了《Expert One-on-One J2EE Design and Development》一书,提出了轻量级容器的概念,为 Spring 框架的诞生奠定了基础。

  2. 2003年,Spring 框架的第一个版本发布,它是一个轻量级的容器,提供了依赖注入、AOP、事务管理等功能。

  3. 2004年,Spring 1.0 发布,它是一个完整的应用程序框架,提供了更多的功能,如 MVC 框架、JDBC 抽象层、ORM 集成等。

  4. 2005年,Spring 1.2 发布,它增加了对 Java 5 的支持,并引入了注解配置。

  5. 2006年,Spring 2.0 发布,它增加了对 Java 5 的全面支持,并引入了基于注解的配置方式。

  6. 2007年,Spring 2.5 发布,它增加了对 Java 6 的支持,并引入了基于注解的依赖注入和 AOP 配置方式。

  7. 2009年,Spring 3.0 发布,它增加了对 Java 7 的支持,并引入了基于 Java 配置的方式。

  8. 2013年,Spring 4.0 发布,它增加了对 Java 8 的支持,并引入了响应式编程模型。

  9. 2017年,Spring 5.0 发布,它增加了对 Java 9 的支持,并引入了响应式编程模型和 WebFlux 框架。

  10. 2020年,Spring 5.3 发布,它增加了对 Java 15 的支持,并引入了更多的功能和改进。

  11. 2022年,Spring 6.0 发布,它增加了对 Java 17 的支持,并引入了更多的功能和改进。

Spring 框架的网站

  1. Spring 官方网站:Spring 官方网站提供了 Spring 框架的详细文档和示例代码,是学习 Spring 框架的最佳资源。  网址:Spring | Home

  2. Baeldung:Baeldung 是一个专注于 Java 和 Spring 框架的博客,提供了大量的教程和示例代码,适合初学者和有经验的开发人员。网址:baeldung

  3. Spring Boot 官方文档:Spring Boot 是 Spring 框架的一个子项目,提供了快速开发 Spring 应用程序的工具和库。Spring Boot 官方文档提供了详细的文档和示例代码,适合初学者和有经验的开发人员。网址:Spring Boot

  4. Spring 中文社区:Spring 中文社区是一个专注于 Spring 框架的中文社区,提供了大量的教程、文章和示例代码,适合中文读者。网址:Spring 中文网 官网

  5. Spring 教程网:Spring 教程网是一个专注于 Spring 框架的中文网站,提供了大量的教程、文章和示例代码,适合初学者和有经验的开发人员。




本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/741777.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Python】python实现Apriori算法和FP-growth算法(附源代码)

使用一种你熟悉的程序设计语言,实现(1)Apriori算法和(2)FP-growth算法。 目录 1、Apriori算法2、F-Growth算法3、两种算法比较 1、Apriori算法 def item(dataset): # 求第一次扫描数据库后的 候选集,&am…

深圳服务器托管-优质的BGP机房

服务器只需要设置一个IP地址,最佳访问路由是由网络上的骨干路由器根据路由跳数与其它技术指标来确定的,不会占用服务器的任何系统资源。服务器的上行路由与下行路由都能选择最优的路径,所以能真正实现高速的单IP高速访问。 BGP协议本身具有冗…

OpenCV实战--利用级联分类器检测眼睛、行人、车牌等等

1、前言 opencv 提供级联分类器除了识别人脸外,还可以检测其他的物体 级联分类器的介绍:OpenCV实战--人脸跟踪(级联分类器) 检测人脸,戴上眼镜的演示: 这里只演示几个,更多的级联分类器文件可以百度自行查看 2、眼睛跟踪 haarcascade_eye.xml 检测眼睛的级联分类器文…

C#、C++、Java、Python 选择哪个好?

作者:网博汇智 链接:https://www.zhihu.com/question/298323023/answer/2789627224 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 一个好的程序员不能把自己绑定在一种语言上,不…

解决Nginx 404反向代理问题的方法

问题背景 当你在使用Nginx进行反向代理时,有时候会遇到404错误,这是因为Nginx无法找到对应的资源。这个问题通常出现在配置反向代理的过程中,导致用户无法正常访问所需的资源,给网站的稳定性和用户体验带来负面影响。 解决方法 …

复杂网络——半局部中心法

一、概述 由于最近写论文需要使用复杂网络知识中的半局部中心法,但是截止目前来说,网上几乎搜索不到有关的MATLAB程序代码,只有一篇用Python编写的程序,我的电脑中没有python,所以我花费一些时间,利用matla…

海豚调度系列之:任务类型——SPARK节点

海豚调度系列之:任务类型——SPARK节点 一、SPARK节点二、创建任务三、任务参数四、任务样例1.spark submit2.spark sql 五、注意事项: 一、SPARK节点 Spark 任务类型用于执行 Spark 应用。对于 Spark 节点,worker 支持两个不同类型的 spark…

53、WEB攻防——通用漏洞CRLF注入URL重定向资源处理拒绝服务

文章目录 CRLF注入原理&检测&利用URL重定向web拒绝服务 CRLF注入原理&检测&利用 URL重定向 就是url中存在urlhttps://xxx,重定向的页面没有限制。主要用来做钓鱼。 web拒绝服务 例如,图片的长宽参数由前端传入,恶意的数据…

分布式调用与高并发处理(二)| Dubbo

文章目录 Dubbo概念_什么是分布式系统单机架构集群架构分布式架构单机、集群和分布式的区别 Dubbo概念_什么是RPCRPC两个作用:常见 RPC 技术和框架: Dubbo概念_简介Dubbo能做什么Dubbo支持的协议 Dubbo概念_核心组件注册中心Registry服务提供者Provider服…

别再写传统简历了!AI简历5个超实用的功能,助你求职一臂之力(强烈建议收藏)

你们在制作简历时,是不是基本只关注两件事:简历模板,还有基本信息的填写。 当你再次坐下来更新你的简历时,可能会发现自己不自觉地选择了那个“看起来最好看的模板”,填写基本信息,却没有深入思考如何使简历更具吸引力。这其实是一个普遍现象:许多求职者仍停留在传统简历…

瑞萨:推迟加薪并裁员 | 百能云芯

随着全球半导体市场进入缓慢复苏阶段,日本汽车和工业芯片巨头瑞萨电子近期宣布了一系列重要的经营决策。据外媒报道,瑞萨电子已决定推迟今年4月至10月的定期加薪,并在自2023年11月以来进行了有限规模的裁员,以应对市场的变化和压力…

LC3014 输入单词需要的最少按键次数Ⅰ与方法内容的易读性

题目 刷题做到力扣 3014,题目要求设计电话键盘上的按键映射,返回按出 word 单词的最小按键次数,1 ≤ word.length ≤ 26,且仅由小写英文字母组成,所有字母互不相同 我的题解 简单题,略加思索拿下&#x…

代码随想录算法训练营第36天—动态规划04 | ● 背包问题 ● 01背包 (二维数组解法和滚动数组解法) ● *416. 分割等和子集

背包问题 常见的背包问题类型(大厂面试重点掌握01背包和完全背包即可)题目描述:有n件物品和一个最多能背重量为w 的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品能用*次,求解怎么装物品使得装入…

识别恶意IP地址的有效方法

在互联网的环境中,恶意IP地址可能会对网络安全造成严重威胁,例如发起网络攻击、传播恶意软件等。因此,识别恶意IP地址是保护网络安全的重要一环。IP数据云将探讨一些有效的方法来识别恶意IP地址。 IP地址查询:https://www.ipdata…

S5PV210_视频编解码项目_裸机开发:实现按键的外部中断处理

加粗样式本文所作内容: 基于S5PV210芯片实现按键的外部中断处理程序,搭建中断处理流程框架 S5PV210对于中断处理的操作流程 1 外部中断得到触发: 1)外部中断在初始化阶段得到使能 2)外界达到了外部中断的触发条件 …

汉诺塔问题代码写法的详细解析

汉诺塔游戏规则: 规则: 汉诺塔问题是一个经典的问题。汉诺塔(Hanoi Tower),又称河内塔,源于印度一个古老传说。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着…

30天学会QT(进阶)--------------第二天(创建项目)

1、如何规范的创建一个项目 由于本人也是从其他的项目上学来的,所以也不算是业界规范,每个公司或者个人都有自己的方式去创建项目,项目的创建是本着简洁,明了,方便而言的,所以对于我来说,不繁琐…

案例--某站视频爬取

众所周知,某站的视频是: 由视频和音频分开的。 所以我们进行获取,需要分别获得它的音频和视频数据,然后进行音视频合并。 这么多年了,某站还是老样子,只要加个防盗链就能绕过。(防止403&#xf…

fs模块 文件写入 之 追加写入

文件的同步、异步追加写入: 一、异步追加 (1)语法:fs.appendFile(path,data,[options],callback(data,err)) (2)操作 1》引入fs模块 const fsrequire(fs); 2》调用appendFile fs.appendFile(./我可以…

学python新手如何安装pycharm;python小白如何安装pycharm

首先找到官网: Download PyCharm: The Python IDE for data science and web development by JetBrains 打开后选择下载,下图标红部分 点击exe程序,点击下一步! 选择安装路径,下一步 弹出界面全选 选择默认 然后直接…