原来学Spring框架也可以这么简单...适合新手入门的spring学习教程

2023-05-16

Spring 是目前主流的 Java Web 开发框架,是 Java 世界最为成功的框架。

该框架是一个轻量级的开源框架,具有很高的凝聚力和吸引力。

Spring 由 Rod Johnson 创立,2004 年发布了 Spring 框架的第一版,其目的是用于简化企业级应用程序开发的难度和周期。本教程使用版本为 Spring 5.2。

Spring 框架不局限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何 Java 应用都可以从 Spring 中受益。Spring 框架还是一个超级粘合平台,除了自己提供功能外,还提供粘合其他技术和框架的能力。

今天这篇文章也是为需要详细了解 Spring 框架的体系结构和实际应用的 Java 程序员准备的。


Spring框架的优点

Spring是一个框架,是一个半成品的软件。有20个模块组成。它是一个容器管理对象,容器是装东西的,Spring容器不装文本,数字。装的是对象。Spring是存储对象的容器。

  • 轻量

Spring框架使用的jar都比较小,一般在1M以下或者几百kb。Spring核心功能的所需的jar总共在3M左右。

Spring框架运行占用的资源少,运行效率高。不依赖其他jar

  • 针对接口编程,解耦合

Spring提供了Ioc控制反转,由容器管理对象,对象的依赖关系。原来在程序代码中的对象创建方式,现在由容器完成。对象之间的依赖解耦合。

  • AOP编程的支持

通过Spring提供的AOP功能,方便进行面向切面的编程,许多不容易用传统OOP实现的功能可以通过AOP轻松应付。

在Spring中,开发人员可以从繁杂的事务管理代码中解脱出来,通过声明式方式灵活地进行事务的管理,提高开发效率和质量。

  • 方便集成各种优秀框架

Spring不排斥各种优秀的开源框架,相反Spring可以降低各种框架的使用难度,Spring提供了对各种优秀框架(如Struts,Hibernate、MyBatis)等的直接支持。简化框架的使用。

Spring像插线板一样,其他框架是插头,可以容易的组合到一起。需要使用哪个框架,就把这个插头放入插线板。不需要可以轻易的移除。

  • 非侵入式

所谓非侵入式是指,Spring框架的 API不会在业务逻辑上出现,由于业务逻辑中没有Spring的 API,所以业务逻辑可以从 Spring框架快速的移植到其他框架,即与环境无关。

  • 容器

Spring作为一个容器,可以管理对象的生命周期、对象与对象之间的依赖关系。可以通过配置文件,来定义对象,以及设置与其他对象的依赖关系。

那么,如何全面系统的学习Spring框架呢?

这套视频教程讲解非常全面,而且适合新手入门,视频中通俗易懂的讲解了 Spring 开发过程中涉及的各种知识,并且为每个知识点都提供了实例,以帮助读者快速入门学习。

www.bilibili.com/video/BV1nz4y1d7uyicon-default.png?t=L892http://www.bilibili.com/video/BV1nz4y1d7uy

Spring体系结构

Spring 由 20 多个模块组成,它们可以分为数据访问/集成(Data Access/Integration)、 Web、面向切面编程(AOP, Aspects)、应用服务器设备管理(Instrumentation)、消息发送 (Messaging)、核心容器(Core Container)和测试(Test)。

Spring框架下载

Spring 官网:http://spring.io

下载地址:

点击链接后,搜索”zip”关键字。

选择下载版本

下载 4.3.9 版本

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

原来学Spring框架也可以这么简单...适合新手入门的spring学习教程 的相关文章

  • 单点登录系统对比 - 协议介绍及 cas、keyclock、authz、authing等的对比

    协议 用户中心系统作为服务端 xff0c 肯定是要跟客户端进行对接来授权 amp 获取用户信息的 目前大致流行的有 LDAP CAS OIDC 基于 Oauth2 0 SAML 等 xff0c 此外还有 Kerberos 等不太常见的协议
  • jquery ajax 提交json格式数据

    某些系统后台必须传json数据 xff0c 所以需要使用如下格式设置 ajax url 34 login 34 data JSON stringify 34 username 34 34 zhangsan 34 34 password 34
  • RSA 非对称加密解密,可以javascript和java加解密

    公钥与私钥机制属于非对称加密的范畴 xff0c 非对称是相对于对称加密而言的 xff0c 对称加密用于加密与解密的密钥是同一把 xff0c 而非对称加密则用于加密与解密的密钥不相同 xff0c 一个公开 xff0c 称为公钥 xff1b 一
  • word 通过宏选中所有表格

    1 将下面的脚本复制 2 word 视图 宏 查看宏 输入宏名 xff1a SelectAllTables 点击创建 Alt 43 F11打开VBA代码编辑窗口 xff0c 新增模块 3 将脚本编辑窗口中的默认代码删掉 xff0c 粘贴1步
  • 开源表单收集系统推荐

    1 TDUCK填鸭表单官网 开源表单系统 xff0c 自定义工作流 xff0c 信息收集系统 业务表单自由拖拽实时生成 全新工作流版本 全新移动端UI 表单收款 全新预约组件 投票场景支持 考试场景支持 函数计算支持 目前市面上的表单平台虽
  • .net framework 官方下载地址

    net framework 官方下载地址 https dotnet microsoft com zh cn download dotnet framework
  • QT/C++多线程练习:单生产者多消费者(巨详细版本)

    QT多线程练习 单生产者多消费者 代码思路1 全局变量2 消费者线程3 消费者管理类4 生产者线程5 主线程总结 最近在研究qt的线程的一些知识点 从如何新建线程到以不同的方式去新建线程 xff0c 再到多线程以及多线程同步的几种方式等 看
  • uniapp 设置背景图像

    uniapp设置背景图像方法如下 xff0c 兼容android APP lt view class 61 34 outer 34 style 61 34 background 39 url 39 43 APPSET bgUrl 43 39
  • nginx https 代理 tomcat http,解决访问https还会跳转http问题

    server listen 443 ssl 配置HTTPS的默认访问端口为443 如果未在此处配置HTTPS的默认访问端口 xff0c 可能会造成Nginx无法启动 如果您使用Nginx 1 15 0及以上版本 xff0c 请使用liste
  • jquery pagination分页组件

    pagination 一个jQuery插件 xff0c 提供简单但完全可定制的分页 样式如下 官网 https pagination js org github https github com superRaytin pagination
  • 通过FRP搭建内网穿透,实现域名访问局域网本机

    1我的目标 xff1a 实现通过域名访问局域网tomcat服务 xff0c 域名访问方便本地微信调试 2思路 xff1a xff08 1 xff09 用服务器搭建内网穿透 利用FRP实现穿透 xff0c frp 是一个专注于内网穿透的高性能
  • java 用combiner工具合成图片

    目录 图片合成工具image combinermaven引入项目java代码合成图片 图片合成工具image combiner 官网地址 https gitee com dromara image combiner maven引入项目 lt
  • java用图片生成pdf

    maven引入组件itextpdf span class token tag span class token tag span class token punctuation lt span dependency span span cl
  • Spring整体架构

    Spring框架是一个分层架构 xff0c 它包含一系列的功能要素 xff0c 并被分为大约20个模块 xff0c 如下图所示 Spring整体架构图 1 Core Container Core Container xff08 核心容器 x
  • 使用networkx常用函数分析连接图

    使用networkx常用函数分析图 1 Connected components 连通图 连通图内任意两点之间都存在path 由此函数可以得到一个components的列表 nx connected components G Q xff1a
  • http not supported or disabled in libcurl 和 未将对象引用到实例的解决办法

    curl获取天气时 xff0c 报错 xff1a http not supported or disabled in libcurl 找了半天 xff0c 发现url地址前面多打了一个空格 xff01 去掉空格就好了 然后蹦出来另一个问题
  • Policy gradient(策略梯度详解)

    文章目录 策略梯度基本知识什么是策略梯度 xff1f 强化学习案例 策略梯度公式详解如何使你的损失函数更好增加一个基准为每一个action分配不同的权重 策略梯度基本知识 什么是策略梯度 xff1f 直接根据状态输出动作或者动作的概率 那么
  • android apk的签名和权限问题

    一 android apk的签名问题 http blog csdn net lyq8479 article details 6401093 1 为什么要给Android应用程序签名 xff1f 如果只能用一句简单的话语来回答这个问题的话 x
  • ERROR in The “path“ argument must be of type string. Received undefined

    在前端开发中 xff0c 用webpack打包时 xff0c 有时候会遇到如题这个错误 比如我机器上的某个工程 xff0c 以下的webpack的配置 xff1a output path ghpages filename bundle js
  • TensorFlow Lite发布重大更新!支持移动GPU、推断速度提升4-6倍

    乾明 发自 凹非寺 量子位 出品 公众号 QbitAI TensorFlow用于移动设备的框架TensorFlow Lite发布重大更新 xff0c 支持开发者使用手机等移动设备的GPU来提高模型推断速度 在进行人脸轮廓检测的推断速度上 x

随机推荐