Spring Framework 5.3文档学习(一)

  • Overview
    • 1.What We Mean by "Spring"
    • 2. History of Spring and the Spring Framework
    • 3. Design Philosophy
    • 4. Feedback and Contributions
    • 5. Getting Started

Spring Framework 5.3.0 文档学习,纯粹个人理解,欢迎各位大佬指正

Overview


这部分主要是介绍Spring多么nb之类的,就不废话多说了。
有用的信息:Spring Framework 5.1需要JDK8以上的支持。

1.What We Mean by “Spring”


啥是Spring?Spring不就是一个项目嘛?
这么理解就有问题了。文档里说了,这要是搁以前,Spring是可以用来特指Spring Framework这个项目的,不过现在不行了。现在俺们公司有一堆“Spring”开头命名的基于Spring Framework做的扩展项目,现在说“Spring”,指的应该是俺们做的这一堆项目。
那么关于Spring Framework这个项目呢,是分了很多模块的。最重要的模块就是core container(核心容器),包括configuration model(配置模型?这块没明白是指的是哪部分)和dependency injection mechanism(常说的依赖注入机制)。当然了,Spring Framework肯定不止这么点东西,它还可以根据项目体系结构的不同提供各种支持,包括messaging(消息)、transactional(事务)、persistence(持久化)、web(就是web也不知道咋解释)、基于servlet的Spring MVC的web框架、基于Spring WebFlux reactive的web框架(Spring Framework 5新增的非阻塞web框架)。这么多模块,项目里需要啥就加啥。
最后一段是说jdk9有个新特性叫jigsaw(模块化),Spring Framework是支持这个特性的。然后介绍了一堆模块命名之类的内容。目前工作用不到jdk9,这个jigsaw也没太理解是啥意思,可能是跟maven的功能类似吧。

2. History of Spring and the Spring Framework


Spring是作为J2EE早期的复杂规范的响应出现的,它与Java EE并不冲突,而是相互补充。Spring集成了Java EE的一些规范,如servlet API、WebSocket API、Concurrency Utilities(并发)、JSON Binding API(Json绑定)、Bean Validation(java bean 校验)、JPA(持久化)、JMS(消息服务)、Dependency Injection 、Common Annotations。
到了Spring Framework 5.0,需要最低javaEE7规范的支持,同时也很好的支持了JavaEE8、tomcat8、tomcat9、WebSphere9和JBoss EAP 7。
过去使用JavaEE和Spring做的项目要部署到应用服务器中。现在,使用了内嵌Sevelet API 的SpringBoot的项目只需要做出极少的改变就可以做到devop(开发运维一体化)和cloud-friendly(不知道咋翻译,意会)。到了Spring Framework 5.0,一个WebFlux项目甚至不直接使用Servlet ApI就可以再非Servlet容器(如Netty)上运行。
Spring会持续更新和发展。除了Spring Framework,还有很多其他项目如pring Boot, Spring Security, Spring Data, Spring Cloud, Spring Batch等。

3. Design Philosophy


当学习一个框架的时候,不仅要知道它是干什么的,更要知道它遵循了哪些原则。
Spring Framework 的设计思想:

  • 在每个层级都提供选择:spring 允许你尽可能推迟程序的设计。例如,你可以通过配置来修改持久化的提供者,而不用修改代码。对其他的一些基础的第三方提供的接口也可以通过配置文件来操作。
  • 接纳不同的观点:Spring包含很多灵活的拓展,不会固化解决事情的方法。它对很多持有不同观点的应用都提供了支持。
  • 保持强大的向后兼容性:Spring在更新版本时一直都尽量控制影响较大的改动。Spring在选择JDK和第三方库的支持上一直都很小心,以便基于Spring的应用进行维护。
  • 关注接口设计:Spring团队在设计API时花费了大量的时间和精力,确保API简单易懂,而且可以在很多版本、很长时间之内经受得住考验。
  • 规定了较高的代码质量标准:Spring Framework对javadoc注释的易读性、时效性、准确性非常重视。它也是可以说是为数不多的代码结构清晰、没有包之间循环引用的项目之一。

4. Feedback and Contributions


自己有问题问StackOverflow,发现是Spring Framework的问题上githut issues提。
如果你nb,也可以直接往github上提代码。

5. Getting Started


别废话了,用spring-boot开始搞吧。

Spring Framework 5.3文档学习(一)相关推荐

  1. Spring Security 官网文档学习

    文章目录 通过`maven`向普通的`WEB`项目中引入`spring security` 配置 `spring security` `configure(HttpSecurity)` 方法 自定义U ...

  2. Spring文档学习

    Spring文档学习 参考Spring Framework Documentation学习 1. IoC 容器 1.1 容器实例化 <beans><import resource=& ...

  3. Spring Data Commons 官方文档学习

    Spring Data Commons 官方文档学习   -by LarryZeal Version 1.12.6.Release, 2017-07-27 为知笔记版本在这里,带格式. Table o ...

  4. 在Spring中使用Asciidoctor:使用Spring MVC渲染Asciidoc文档

    Asciidoc是一种基于文本的文档格式,因此如果要将文档提交到版本控制系统中并跟踪不同版本之间的更改,它非常有用. 这使Asciidoc成为编写书籍,技术文档,常见问题解答或用户手册的理想工具. 创 ...

  5. Spring Data JPA - 参考文档 地址

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. Spring Data JPA - 参考文档 文档地址

  6. Spring Framework 中文官方文档

    Spring Framework 中文官方文档 目前为最新版 5.3.11. 其他spring文档不断更新中 1.历史.设计理念.反馈.入门. Overview 2.IoC 容器.事件.资源.i18n ...

  7. SpringBoot 第十篇: 用spring Restdocs创建API文档

    这篇文章将带你了解如何用spring官方推荐的restdoc去生成api文档.本文创建一个简单的springboot工程,将http接口通过Api文档暴露出来.只需要通过 JUnit单元测试和Spri ...

  8. Spring Boot API 接口文档 Swagger 入门

    转载自 芋道 Spring Boot API 接口文档 Swagger 入门 摘要: 原创出处 http://www.iocoder.cn/Spring-Boot/Swagger/ 「芋道源码」欢迎转 ...

  9. swagger api文档_带有Swagger的Spring Rest API –创建文档

    swagger api文档 使REST API易于使用的真正关键是好的文档. 但是,即使您的文档做得很好,您也需要设置公司流程的权利以正确,及时地发布它. 确保利益相关者按时收到是一回事,但是您也要负 ...

最新文章

  1. 可集成DevOps的Scrum敏捷工具!
  2. 新浪架构调整凸显曹国伟移动化决心
  3. django_rest_framework之GenericAPIView(二)之搜索、排序、分页讲解
  4. 【oracle】查看数据库最近执行了哪些sql语句
  5. 睡眠音频分割及识别问题(十)--Java读取wav文件
  6. 异构计算助力客户春节webp图片编码
  7. 使用过滤器解决SQL注入和跨站点脚本编制
  8. 【Level 08】U06 Good Feeling L4 The surprising event
  9. 1.Ubuntu Server下搭建LAMP环境
  10. 4. CSS id 选择器
  11. 关于悟空CRM部署经历--钟艳明
  12. Increasing Faithfulness in Knowledge-Grounded Dialogue with Controllable Features
  13. Android 指纹识别(Touch ID)实例
  14. 四次重启共享充电宝业务 美团终结“三电一兽”格局预言会成真吗?
  15. vue3+element-plus动态设置字体大小
  16. 线性代数系列(三)--向量空间
  17. JavaScript中getElementsByName
  18. VScode Shortcuts for Mac
  19. 多卡聚合智能融合通信设备在智慧房车上的应用
  20. C# 科学计数法的转换

热门文章

  1. pip、pip2以及pip3的区别以及使用方法
  2. 美眉着清凉装就成了勾引男人的罪魁祸首?
  3. 在js中为对象添加和删除属性
  4. 【开店宝典】Lazada怎么入驻?
  5. 微信小程序教程(搭建简单的小程序示例)
  6. Boolean类型有无默认值
  7. Python字符串比较
  8. Finalshell官网最新 中文,绿色Finalshell
  9. Ajax的原理及优缺点
  10. 爬虫-微信公众平台消息获取