分类: JAVA 发表时间: 2019年09月09日

标题: Spring主要框架模块汇总

摘要: Spring包含众多框架,它们各自提供不同的能力,可以应用于任何领域。Spring Boot对于使用Spring提供了方便的支持,但是默认包含了很多不必要的内容,了解Spring主要框架的功能可以让我们订制自己的需求,精简不必要的库引入

Spring各框架汇总

Spring通常并不代表某一个具体框架,而是代表着一系列的众多框架,主要包括:

  • org.springframework.spring-core
  • org.springframework.spring-context
  • org.springframework.spring-web
  • org.springframework.boot.*
  • org.springframework.data.*

它们可以单独放入项目中使用,也可以由spring-boot组成一整套完整的开发框架用于某个方向的开发,比如web

org.springframework.spring-core

org.springframework.spring-core是整个spring框架系列的基础,其为其他框架提供了底层的IoC容器

org.springframework.spring-context

org.springframework.spring-context框架可以作为其他框架的依赖,也可以在项目中独立引入使用,它可以为项目提供完整的依赖注入相关内容

直接依赖包括如下:

  • org.springframework.spring-core
  • org.springframework.spring-aop
  • org.springframework.spring-beans
  • org.springframework.spring-expression
  • org.springframework.spring-instrument

主要提供的注解如下:

  • @Component 声明被注解的类是spring的一个组件
  • @ComponentScan 声明组件扫描的配置
  • @Controller 声明被注解的类是一个控制器,这是@Component注解的一种特殊形式
  • @Service 声明被注解的类是一个服务层,这是@Component注解的一种特殊形式
  • @Repository 声明被注解的类是一个持久化层,这是@Component注解的一种特殊形式
  • @Configuration 声明被注解的类是一个配置类,这是@Component注解的一种特殊形式
  • @Bean 声明被注解的方法是会创建一个Bean依赖项,该注解不能应用与类级别
  • @Autowired 声明被注解的字段、方法、构造函数中的部分内容需要自动注入

org.springframework.spring-web

org.springframework.spring-web框架提供了对于http相关内容的封装,如request请求、cookie、header的解析,response响应、cookie等内容的发送,表单上传文件的支持等,不涉及到mvc相关的内容

直接依赖包括:

  • org.springframework.spring-context
  • org.springframework.spring-oxm

主要提供的注解如下:

  • @RestController 声明被注解的类是一个Rest风格的控制器
  • @ResponseBody 声明被注解的方法返回的不是一个html页面的地址,而是某种具体内容,如对象
  • @RequestMapping 声明被注解的方法在web路由上的映射配置
  • @RequestBody 该注解被使用在方法的参数上,该注解标注的参数对象被用来解析请求内容
  • @RequestParam 该注解用在方法的参数上,该注解标注的参数用于解析请求参数

该包主要提供的注入对象如下:

  • MultipartFile 该对象用来解析上传的文件对象

org.springframework.spring-webmvc

org.springframework.spring-webmvc框架提供了对于web mvc模型的支持,它提供了对于视图模板引擎的支持,默认使用freemarker模板引擎,也支持自定义配置其他模板引擎

直接依赖包括:

  • org.springframework.spring-web
  • org.springframework.spring-context-support