Spring 框架入门教程
1. 1. Spring 框架 2. 2. Spring 5 3. 3. Spring WebFlux 4. 4. 先介绍一下 Spring 5. 5. 什么是 Spring 依赖注入 6. 6. 什么是 Spring IoC 容器 和 Bean 7. 7. Spring Bean 的生命周期 8. 8. Spring REST 开发 9. 9. Spring REST XML 10. 10. Spring RestTemplate 开发 11. 11. Spring AOP 切面编程 12. 12. Spring AOP 方法调优 13. 13. Spring 注解详解 14. 14. Spring 核心注解之 @Autowired 15. 15. Spring 核心注解之 @RequestMapping 16. 16. Spring MVC 开发样例 17. 17. Spring MVC 开发指南 18. 18. Spring MVC 异常处理机制 19. 19. Spring MVC Validator 20. 20. Spring MVC 拦截器 21. 21. Spring MVC 文件上传 22. 22. Spring MVC 国际化(i18n) 23. 23. Spring MVC Hibernate MqSQL 24. 24. Spring ORM 25. 25. Spring ORM JPA 26. 26. Spring Data JPA 27. 27. Spring 事务管理 28. 28. 常用的 Spring JdbcTemplate 29. 29. Spring Security 简介 30. 30. Spring Security 教程 31. 31. Spring Security UserDetailsService 32. 32. Spring MVC 登录注销简单案例 33. 33. Spring Security Roles 34. 34. Spring Boot Tutorial 35. 35. Spring Boot Components 36. 36. Spring Boot CLI Hello World 37. 37. Spring Boot Initilizr Web 38. 38. Spring Boot Initilizr IDE 39. 39. Spring Boot Initilizr CLI 40. 40. Spring Boot Initilizr Tools 41. 41. Spring Boot MongoDB 42. 42. Spring Boot Redis Cache 43. 43. Spring Boot 常见面试问题 44. 44. Spring Batch 45. 45. Spring Batch 批处理示例 46. 46. Spring AMQP 47. 47. Spring RabbitMQ 48. 48. Spring AMQP RabbitMQ 49. 49. Apache ActiveMQ 安装与启动 50. 50. Spring ActiveMQ 教程 51. 51. Spring ActiveMQ 示例 52. 52. Spring JDBC 53. 53. Spring DataSource JNDI 54. 54. Spring Hibernate 55. 55. Spring Primefaces JPA 56. 56. Spring Primefaces MongoDB 57. 57. Spring Primefaces Hibernate 58. 58. SpringRoo Primefaces Hibernate 59. 59. Spring JSF 60. 60. Spring JDF Hibernate 61. 61. Spring Data MongoDB 62. 62. Spring 常见面试问题

1. Spring 框架

Spring框架是最流行的J2EE框架之一。

在本文中,我们将了解以下内容:

  • Spring框架架构
  • Spring核心部件
  • spring框架下的各种项目。

我查看了Spring框架、Servlet、JSP和JSF的Google趋势图。很明显,Spring远远领先于所有其他J2EE技术。

Spring框架和Google Trends

什么是Spring框架?

Spring是Java企业版最流行的框架之一。

全世界的开发人员都使用Spring开发可靠和高质量的应用程序。

Spring框架是由罗德·约翰逊设计的。从那时起,Spring已经成为Java世界中EJB模型的替代技术。

您可以使用spring框架创建不同类型的应用程序。

Spring核心概念和DI、IoC、AOP

  • 不了解什么是Spring框架,就不可能理解什么是Spring框架依赖注入控制反转. 依赖注入也称为DI,是控制反转(IoC)的一种类型。
  • 控制反转&#在以后的编程中,其他对象的实现可能不依赖于它们的面向对象的编程原理。
  • 依赖注入–;是一种结构设计模式的组合,其中对于应用程序的每个功能都有一个,即一个条件独立的对象(服务),它可以使用接口已知的其他对象(依赖项)。依赖项在服务创建时被传输(实现)到服务。在这种情况下,我们将一个类的元素引入另一个类。实际上,DI是通过将参数传递给构造函数或使用setter来实现的。实现这种方法的库也称为IoC容器。
  • 面向切面编程&#允许您区分应用程序中的交叉(功能)功能的编程范例。这些跨多个应用程序节点的功能称为横切关注点,这些横切注解与应用程序的直接业务逻辑分离。在OOP中,关键单元是类,而在AOP中,关键元素是方面。DI有助于将应用程序类分离成单独的模块,AOP有助于将横切关注点与它们影响的对象分离开来。

Spring框架架构

springframework被分成许多独立的模块,这允许您决定在应用程序中使用哪些模块。下图展示了Spring框架架构中最重要的模块。

让我们逐一了解一下spring生态系统模块。

Spring框架核心组件

Spring的核心容器由四个模块组成:SpEL、Context、Core、bean。这些元素的说明如下:

  1. SpEL模块提供了一种功能强大的表达式语言,用于在执行过程中操作对象。
  2. Context是在bean和Core的基础上构建的,允许您访问在设置中定义的任何对象。Context模块的关键元素是ApplicationContext接口。
  3. 核心模块提供了框架的关键部分,包括IoC和DI属性。
  4. Bean模块负责创建和管理Spring Bean&#应用程序上下文是8211单元结构。

Spring框架Web

Spring框架的Web层由Web、webmvc、websocket、webportlet等组成。

  1. Web模块提供下载文件、创建Web应用程序、restweb服务等功能。
  2. Web MVC包含SpringMVCweb应用程序的实现。
  3. websocket通过在Web应用程序中使用websocket为客户机和服务器之间的通信提供支持。
  4. webportlet为MVC实现提供了Portlet环境

Spring框架数据访问

数据访问/集成容器由JDBC、ORM、OXM、JMS和事务模块组成。

  1. JDBC提供了JDBC的抽象层,并消除了开发人员手动注册与连接到数据库相关联的单调代码的需要。
  2. Spring对象关系映射提供与流行的ORMs(如Hibernate、JDO)的集成,这些orm是JPA的实现。
  3. OXM模块负责链接Object/XML和XMLBeans、JAXB等。
  4. JMS(Java消息传递服务)模块负责创建、发送和接收消息。
  5. 事务支持对实现某些方法和pojo的类进行事务管理。

其他模块

Spring还包括许多其他重要的模块,比如AOP、方面、工具、消息传递和测试。

  1. AOP实现面向切面的编程,并允许使用AOP的全部功能。
  2. Aspects模块提供与AspectJ的集成,AspectJ也是一个强大的AOP框架。
  3. 指令插入负责支持在服务器应用程序中使用的类指令插入和类装入器。
  4. 消息传递模块提供STOMP支持。
  5. 最后,测试模块使用TestNG或JUnit框架提供测试。

Spring5特色

Spring5号带来了大量更新。的一些重要特征Spring5是:

  1. 支持Java8、Java9、JavaEE7、JavaEE8、Servlet4.0、BeanValidation2.0和JPA2.2。我很高兴看到Spring正在努力赶上正在使用的主要技术的最新版本。
  2. 使用新模块&Spring Jcl改进了日志记录。
  3. 文件操作使用nio2流,因此提高了性能。
  4. 支持Reactor 3.1 Flux和Mono以及rxjava1.3和2.1作为Spring Mvc控制器方法的返回值。
  5. 支持Kotlin、projectlombok、JSON绑定API作为Jackson和GSON的替代。
  6. SpringWebFlux–;Spring开始反应。
  7. 支持六月五号
  8. 通过Kotlin提供函数式编程支持。
您可以在我们的GitHub存储库.

参考文献:Spring官网,Spring参考文档