spring源码学习第一天

152 阅读1分钟

面试官问:什么是spring?

我的回答:面向企业级开发的框架,为了简化开发.

面试官:没了?

我:这?

我只记住了结论,却不记得过程,唉深深的叹气!!!!

首先要明白spring作为一款框架,有哪些功能,又是如何做到简化开发的,这才是我们需要真正需要了解的东西,spring真的好吗?他有哪些缺陷?这样设计的好处?接下来一一探索.

1.首先要明白什么是spring框架

介绍:是为了解决复杂的企业级开发而创建的

目的:简化企业级开发

如何做到简化开发的?

  1. 基于POJO的轻量级和最小侵入性编程
  2. 通过依赖注入和面向接口实现松耦合
  3. 基于切面和惯例进行声明式编程
  4. 通过切面和模板减少样式代码

模块

  • 核心技术(core):依赖注入、事件、资源、i18n、验证、数据绑定、类型转换、SpEL、AOP。

  • 测试:模拟对象、TestContext 框架、Spring MVC 测试、WebTestClient

  • 数据访问:事务、DAO 支持、JDBC、ORM、Marshalling XML。

  • web: Spring MVC和Spring WebFluxWeb 框架

  • 集成:远程处理,JMS,JCA,JMX,电子邮件,任务,调度,缓存

      Spring框架至今已集成了20多个模块。这些模块主要被分位核心容器、数据访问/集成,、Web、AOP(面向切面编程)、工具、消息和测试模块。