Spring ( 二 ) 介绍

news2024/12/23 19:00:57

2.Spring

Spring框架是一个用于Java开发的开源应用程序框架,提供了一系列的工具和解决方案,帮助开发者快速构建高质量、可维护的企业级应用。Spring框架的主要特点包括:模块化、轻量级、可测试性、松耦合、面向切面编程(AOP)、IoC(控制反转)和DI(依赖注入)等。另外,Spring框架也提供了一系列扩展组件,比如Spring MVC、Spring Security、Spring Boot等,可以为开发者在不同场景下提供更多的选择和便利。

官网 : https://spring.io/

学习资料 : https://spring.io/projects/spring-framework#learn

项目源码 : https://github.com/spring-projects/spring-framework

2.1.作者介绍

罗德·约翰逊 Rod Johnson : 悉尼大学(计算机和音乐双学位) , Servlet2.4和JDO2.0的规范专家, JCP的积极成员, Java development community中杰出人物

Spring的创始人

Spring是一个2003 年兴起的一个轻量级的Java 开发框架开源框架,由Rod Johnson在其著作 <<Expert One-On-One J2EE Development and Design >>中阐述的部分理念和原型衍生而来。

框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架。

Spring 使用基本的 JavaBean来完成以前只可能由 EJB 完成的事情。

2.2.功能模块

Spring框架的功能被有组织的分散到约20个模块中。

这些模块分布在核心容器,数据访问/集成,Web,AOP(面向切面的编程),植入(Instrumentation),消息传输和测试

核心IoC容器 : Beans 类的管理 , Core 核心 , Context 上下文 , Expression 表达式

在这里插入图片描述

2.3.Spring优点

方便解耦,简化开发:Spring 就是一个大工厂,可以将所有对象创建和依赖关系维护交给 Spring 管理

AOP 编程的支持:Spring 提供面向切面编程,可以方便的实现对程序进行权限拦截、运行监控等功能

声明式事务的支持:只需要通过配置就可以完成对事务的管理,而无需手动编程

方便程序的测试:支持Junit4 ,可以通过注解方便的测试 Spring 程序

方便集成各种优秀框架:Spring 其内部提供了对各种优秀框架的直接支持

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

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

相关文章

NFT Insider #94:​The Sandbox与ERM Labs达成合作,周杰伦与中国移动开启元宇宙合作

引言&#xff1a;NFT Insider由NFT收藏组织WHALE Members(https://twitter.com/WHALEMembers)、BeepCrypto&#xff08;https://twitter.com/beep_crypto&#xff09;联合出品&#xff0c;浓缩每周NFT新闻&#xff0c;为大家带来关于NFT最全面、最新鲜、最有价值的讯息。每期周…

c高级作业3

#!/bin/bash#有m1.txt m2.txt m3.txt m4.txt&#xff0c;分别创建出对应的目录&#xff0c;m1 m2 m3 m4 并把文件移动到对应的目录下 for ((i1;i<5;i)) do mkdir m$i touch m$i.txtmv m$i.txt m$i done九九乘法表 #九九乘法表 i1 j1 while [ $i -le 9 ] do j1while [ $j -l…

对称算法模式-GCM(Galois/Counter Mode)

以下内容来自《NIST Special Publication 800-38D November, 2007》- Recommendation for Block Cipher Modes of Operation: Galois/Counter Mode (GCM) and GMAC。 链接在此 AES Galois/Counter Mode 1. 加密步骤 2. 解密步骤 3. GCTR函数 4. GHASH函数 5. 块数据乘法 6. C…

网络分层模型 | OSI七层模型、TCP/IP四层模型

欢迎关注博主 Mindtechnist 或加入【Linux C/C/Python社区】一起学习和分享Linux、C、C、Python、Matlab&#xff0c;机器人运动控制、多机器人协作&#xff0c;智能优化算法&#xff0c;滤波估计、多传感器信息融合&#xff0c;机器学习&#xff0c;人工智能等相关领域的知识和…

群报数是什么应用?群报数的内容如何自动写入至在线表格?

群报数是什么产品&#xff1f; 群报数是一个人人可用的在线表单工具&#xff0c;可发起「填表、收集、问卷、打卡、通知、预约、报名、投票」等类型的页面&#xff0c;支持预设名单&#xff0c;可快速排查谁未填、并对未填人员一键催填&#xff0c;所收集的数据支持「一键导出…

蓝奥声智能灯控解决方案:一种无线单火取电控制技术

单火开关出现鬼火现象一般是出现在控制小功率灯具的情况下&#xff0c;正常的5W之上的灯具一般是没啥问题的&#xff08;质量差的除外&#xff09;。就现在来说&#xff0c;单火稳定性与零火版相比还是有所欠缺&#xff0c;毕竟从电路原理上来说&#xff0c;这确实是一个硬伤。…

Spark 从入门到精通

Spark 从入门到精通 环境搭建 准备工作 创建安装目录 mkdir /opt/soft cd /opt/soft下载scala wget https://downloads.lightbend.com/scala/2.13.10/scala-2.13.10.tgz -P /opt/soft解压scala tar -zxvf scala-2.13.10.tgz修改scala目录名称 mv scala-2.13.10 scala-2下…

容灾到对象存储,能降低多少灾备成本?以华为云容灾为例

根据IPlytics的数据显示&#xff0c;华为是唯一一家进入全球十大云计算专利拥有者排行榜的中国公司&#xff1b; 华为是唯一一家提供端到端服务能力的云服务商&#xff0c;从底层的物理设备到上层的虚拟化建设都是有华为自主研发的产品&#xff1b; 华为是国内唯一一家提供5线全…

开源大模型文档

开源大模型综述 排行榜1.LLaMA资源&#xff1a; 2.Chinese-LLaMA-Alpaca资源&#xff1a; 3.Alpaca资源&#xff1a; 4.Alpaca-LoRA5.Vicuna资源&#xff1a; 6.OpenChatKit资源&#xff1a; 7.GPT4ALL8.Raven RWKV资源&#xff1a; 9.OPT资源&#xff1a; 10.Flan-T5-XXL资源&…

PowerShell install 一键部署subversion

subversion SVN是subversion的缩写&#xff0c;是一个开放源代码的版本控制系统&#xff0c;通过采用分支管理系统的高效管理&#xff0c;简而言之就是用于多个人共同开发同一个项目&#xff0c;实现共享资源&#xff0c;实现最终集中式的管理。 TortoiseSVN TortoiseSVN 是…

ICG-Azide/Alkyne吲哚菁绿标记叠氮/炔基-星戈瑞

ICG-Azide 吲哚菁绿标记叠氮 分子式&#xff1a;C48H56N6O4S 分子量&#xff1a;813.07 外观&#xff1a;固体/粉末 激发、发射波长:785/821nm 规格&#xff1a;mg 溶解性&#xff1a;溶于DMSO或DMF ICG-Azide是一种新型的荧光探针&#xff0c;其化学性质独特。它是一种含…

MongoDb简单使用

介绍 MongoDB是一个基于分布式文件存储的数据库。由C语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB是一个介于关系数据库和非关系数据库之间的产品&#xff0c;是非关系数据库当中功能最丰富&#xff0c;最像关系数据库的。 它支持的数据结构非常松…

leetcode50 快速幂

https://leetcode.cn/problems/powx-n/实现 pow(x, n) &#xff0c;即计算 x 的整数 n 次幂函数&#xff08;即&#xff0c; x n x^n xn &#xff09;。 示例 1&#xff1a;输入&#xff1a;x 2.00000, n 10 输出&#xff1a;1024.00000 示例 2&#xff1a;输入&#xff1a;…

安全工程师必读 ——《安全技术工具扫盲》

安全技术 SAST - 静态应用安全测试&#xff08;白盒检测&#xff09;DAST - 动态应用安全测试&#xff08;黑盒检测&#xff09;IAST - 交互式应用安全测试&#xff08;灰盒检测&#xff09;RASP - 运行时应用自我保护Dependency Scanning&#xff08;依赖项安全扫描&#xff…

袋鼠云产品功能更新报告05期|应有尽“优”,数栈一大波功能优化升级!

这段时间&#xff0c;我们对产品本身以及客户反馈的一些问题进行了持续的更新和优化&#xff0c;包括对离线平台数据同步功能的更新&#xff0c;数据资产平台血缘问题的优化等&#xff0c;力求满足不同行业用户的更多需求&#xff0c;为用户带来极致的产品使用体验。 以下为袋…

边缘计算节点是啥?边缘计算与CDN有什么关系?一文带你了解边缘计算节点BEC(2)

上文已经为大家详细介绍了边缘计算节点 BEC 与 CDN 之间的关系&#xff0c;对于 CDN 而言&#xff0c;边缘计算不仅仅只增加了存储、计算的功能&#xff0c;还有网络、安全等等一系列的基础能力。 如果大家感兴趣&#xff0c;欢迎阅读我们上一篇文章 边缘计算节点是啥&#x…

如何在pythonanywhere上部署Django项目?

PythonAnywhere是一个基于云的Python开发平台&#xff0c;它允许用户在云端运行、开发和部署&#xff0c;该平台提供了Python编程环境、Web框架、数据库和Web服务器等工具&#xff0c;让用户可以轻松地创建和部署Python应用程序。PythonAnywhere还提供了免费和付费的服务&#…

Java设计模式其一(概述、UML图、软件设计模式) | 穷其道者,归处亦同

文章目录 1. 设计模式概述1.1 软件设计模式的概念1.2 学习设计模式的必要性1.3 设计模式分类 2. UML图2.1 类图概述2.2 类图的作用2.3 类图的表示法2.3.1 类的表达方式2.3.2 类与类之间关系的表达方式 3. 软件设计原则3.1 开闭原则3.2 里氏替换原则3.3 依赖倒转原则3.4 接口隔离…

Java【多线程基础6】定时器的使用方式 + 模拟实现Timer

文章目录 前言一、定时器1, 什么是定时器2, 如何使用定时器 二、模拟实现定时器1, 初步实现2, 问题改善 总结 前言 &#x1f4d5;各位读者好, 我是小陈, 这是我的个人主页 &#x1f4d7;小陈还在持续努力学习编程, 努力通过博客输出所学知识 &#x1f4d8;如果本篇对你有帮助, …

6.文本三剑客--sed、awk

文章目录 文本三剑客sed介绍命令介绍打印内容删除替换插入分组 文本三剑客 sed 介绍 sed编辑器 sed是一种流编辑器&#xff0c;流编辑器会在编辑器处理数据之前基于预先提供的一组规则来 编辑数据流。 sed编辑器可以根据命令来处理数据流中的数据&#xff0c;这些命令要么…