Spring概述

简介: Spring是现今Java开发人员最常用的框架,开发人员使用Spring来构建高性能的,易于测试的,可重用的代码。使用Spring,Java开发人员的效率极大提升。

Spring是现今Java开发人员最常用的框架,开发人员使用Spring来构建高性能的,易于测试的,可重用的代码。使用Spring,Java开发人员的效率极大提升。

什么是Spring?

这可能是一个面试时常问到,或入门的开发人员常问的问题,回答起来比较难。我刚开始学的时候,讲师说它有两大核心功能IOC和AOP,自己用了很久才能对这些概念理解的更清晰一点。

Spring是一个轻量级的框架,这里的轻量级不是说库或者类的大小,而是说Spring对我们的应用有很少的侵入作用,当我们不使用Spring的时候,只需改动很少我们的代码。使用Spring的时候,Spring也提供了很多的组件来加快我们的开发。

Spring特性

官方参考文档有提供各个版本新特性,这里列举大版本特性

4.x 版本新特性

参考New Features and Enhancements in Spring Framework 4.X

  • 全面支持Java8.0
  • 核心容器增强,添加@Description,提供@Conditional注解实现Bean条件过滤,@Lazy注解解决Bean延时依赖注入等
  • 支持Groovy定义Bean,其类似于XML,但是比XML更加灵活
  • Web增强,支持Servlet 3.0,引入@RestController,AsyncTemplate进行客户端异步无阻塞请求
  • 支持Websocket
  • 测试的增强
5.x 新特性

参考What's New in Spring Framework 5.x

  • 兼容Java 9
  • 反应式编程模型
  • 函数式编程
  • HTTP/2的支持
  • 使用Junit5进行单元测试
  • 对Kotlin支持

Spring技术架构

Spring 5按功能分为以下几个大模块:

  • Core: IoC container, Events, Resources, i18n, Validation, Data Binding, Type Conversion, SpEL, AOP.
  • Testing: Mock objects, TestContext framework, Spring MVC Test, WebTestClient.
  • Data Access: Transactions, DAO support, JDBC, ORM, Marshalling XML.
  • Web Servlet: Spring MVC, WebSocket, SockJS, STOMP messaging.
  • Web Reactive : Spring WebFlux, WebClient, WebSocket.
  • Integration: Remoting, JMS, JCA, JMX, Email, Tasks, Scheduling, Cache.
  • Languages : Kotlin, Groovy, Dynamic languages.

Spring的子项目则如下:Spring Projects列表

  • Spring Boot: 可以很容易的创建独立运行的Spring应用,内嵌Tomcat,Jetty或者Undertow, 提供生产级别的特性如metrics,健康检查和外部配置。
  • Spring Data: 提供统一的基于Spring的数据访问模型,Spring Data下针对不同的数据库提供了很多子的项目
  • Spring AMQP: 提供了高度抽象的模板,用于集成消息中间件
  • Spring Session: 提供API来管理用户的Session信息。

... 还有很多不同的项目

小结

Spring给开发者带来了很多便捷,它已经成为了Java开发人员必须要掌握的一项基本技能,这里主要是对Spring做一个概述,了解Spring的基本结构与所涉及的一些东西。

参考

相关文章
|
8月前
|
设计模式 开发框架 Java
Spring及工厂模式概述
Spring及工厂模式概述
64 8
|
7月前
|
XML Java 数据格式
Spring5系列学习文章分享---第一篇(概述+特点+IOC原理+IOC并操作之bean的XML管理操作)
Spring5系列学习文章分享---第一篇(概述+特点+IOC原理+IOC并操作之bean的XML管理操作)
57 1
|
3月前
|
Java 数据库连接 数据库
让星星⭐月亮告诉你,SSH框架01、Spring概述
Spring是一个轻量级的Java开发框架,旨在简化企业级应用开发。它通过IoC(控制反转)和DI(依赖注入)降低组件间的耦合度,支持AOP(面向切面编程),简化事务管理和数据库操作,并能与多种第三方框架无缝集成,提供灵活的Web层支持,是开发高性能应用的理想选择。
50 1
|
5月前
|
Java API Spring
Spring5入门到实战------1、Spring5框架概述、入门案例
这篇文章是Spring5框架的入门教程,概述了Spring框架的核心概念和特点,并通过一个创建普通Java类的案例,详细演示了从下载Spring核心Jar包、创建配置文件、编写测试代码到运行测试结果的完整流程,涵盖了Spring IOC容器的使用和依赖注入的基本用法。
|
8月前
|
安全 Java 大数据
Spring概述、系统架构及核心概念
Spring概述、系统架构及核心概念
215 0
|
8月前
|
安全 前端开发 Java
学习从Struts迁移到Spring的策略概述
从Struts框架迁移到Spring框架是一个常见的升级路径,主要是为了利用Spring框架提供的更多功能、更好的模块化支持以及更广泛的社区资源。
124 3
|
7月前
|
XML 开发框架 Java
Spring框架第一篇(Spring概述与IOC思想)
Spring框架第一篇(Spring概述与IOC思想)
|
7月前
|
开发框架 前端开发 Java
Spring概述(1)
Spring概述(1)
57 0
|
8月前
|
前端开发 Java 应用服务中间件
Spring MVC框架概述
Spring MVC 是一个基于Java的轻量级Web框架,采用MVC设计模型实现请求驱动的松耦合应用开发。框架包括DispatcherServlet、HandlerMapping、Handler、HandlerAdapter、ViewResolver核心组件。DispatcherServlet协调这些组件处理HTTP请求和响应,Controller处理业务逻辑,Model封装数据,View负责渲染。通过注解@Controller、@RequestMapping等简化开发,支持RESTful请求。Spring MVC具有清晰的角色分配、Spring框架集成、多种视图技术支持以及异常处理等优点。
99 1
|
8月前
|
安全 Java API
第1章 Spring Security 概述(2024 最新版)(下)
第1章 Spring Security 概述(2024 最新版)
120 0