SpringBoot-- 知识点介绍

Posted 听歌敲代码

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot-- 知识点介绍相关的知识,希望对你有一定的参考价值。

一、简介

  Spring Boot是为了简化Spring应用的创建、运行、调试、部署等而出现的,使用它可以做到专注于Spring应用的开发,而无需过多关注XML的配置。简单来说,它提供了一堆依赖打包,并已经按照使用习惯解决了依赖问题---习惯大于约定。

  Spring Boot默认使用tomcat作为服务器,使用logback提供日志记录。

  Spring Boot提供了一系列的依赖包,所以需要构建工具的支持:maven 或 gradle。

二、Springboot启动器

  1)spring-boot-starter         这是Spring Boot的核心启动器,包含了自动配置、日志和YAML。
  2)spring-boot-starter-actuator     帮助监控和管理应用。
  3)spring-boot-starter-amqp      通过spring-rabbit来支持AMQP协议(Advanced Message Queuing Protocol)。
  4)spring-boot-starter-aop            支持面向方面的编程即AOP,包括spring-aop和AspectJ。
  5)spring-boot-starter-artemis      通过Apache Artemis支持JMS的API(Java Message Service API)。
  6)spring-boot-starter-batch         支持Spring Batch,包括HSQLDB数据库。
  7)spring-boot-starter-cache      支持Spring的Cache抽象。
  8)spring-boot-starter-cloud-connectors     支持Spring Cloud Connectors,简化了在像Cloud Foundry或Heroku这样的云平台上连接服务。
  9)spring-boot-starter-data-elasticsearch   支持ElasticSearch搜索和分析引擎,包括spring-data-elasticsearch。
  10)spring-boot-starter-data-gemfire   支持GemFire分布式数据存储,包括spring-data-gemfire。
  11)spring-boot-starter-data-jpa     支持JPA(java Persistence API),包括spring-data-jpa、spring-orm、hibernate。
  12)spring-boot-starter-data-MongoDB  支持mongodb数据,包括spring-data-mongodb。
  13)spring-boot-starter-data-rest       通过spring-data-rest-webmvc,支持通过REST暴露Spring Data数据仓库。
  14)spring-boot-starter-data-solr       支持Apache Solr搜索平台,包括spring-data-solr。
  15)spring-boot-starter-freemarker      支持FreeMarker模板引擎。
  16)spring-boot-starter-groovy-templates 支持Groovy模板引擎。
  17)spring-boot-starter-hateoas      通过spring-hateoas支持基于HATEOAS的RESTful Web服务。
  18)spring-boot-starter-hornetq       通过HornetQ支持JMS。
  19)spring-boot-starter-integration       支持通用的spring-integration模块。
  20)spring-boot-starter-jdbc          支持JDBC数据库。
  21)spring-boot-starter-jersey       支持Jersey RESTful Web服务框架。
  22)spring-boot-starter-jta-atomikos    通过Atomikos支持JTA分布式事务处理。
  23)spring-boot-starter-jta-bitronix       通过Bitronix支持JTA分布式事务处理。
  24)spring-boot-starter-mail            支持javax.mail模块。
  25)spring-boot-starter-mobile        支持spring-mobile。
  26)spring-boot-starter-mustache      支持Mustache模板引擎。
  27)spring-boot-starter-Redis          支持redis键值存储数据库,包括spring-redis。
  28)spring-boot-starter-security       支持spring-security。
  29)spring-boot-starter-social-facebook  支持spring-social-facebook
  30)spring-boot-starter-social-linkedin    支持pring-social-linkedin
  31)spring-boot-starter-social-twitter    支持pring-social-twitter
  32)spring-boot-starter-test        支持常规的测试依赖,包括JUnit、Hamcrest、Mockito以及spring-test模块。
  33)spring-boot-starter-thymeleaf        支持Thymeleaf模板引擎,包括与Spring的集成。
  34)spring-boot-starter-velocity       支持Velocity模板引擎。
  35)spring-boot-starter-web       支持全栈式Web开发,包括Tomcat和spring-webmvc。
  36)spring-boot-starter-websocket       支持WebSocket开发。
  37)spring-boot-starter-ws         支持Spring Web Services。

三、Springboot注解

  @SpringBootApplication:包含了@ComponentScan、@Configuration和@EnableAutoConfiguration注解。其中@ComponentScan让spring Boot扫描到Configuration类并把它加入到程序上下文。
  @Configuration 等同于spring的XML配置文件;使用Java代码可以检查类型安全。
  @EnableAutoConfiguration 自动配置。
  @ComponentScan 组件扫描,可自动发现和装配一些Bean。
  @Component可配合CommandLineRunner使用,在程序启动后执行一些基础任务。
  @RestController注解是@Controller和@ResponseBody的合集,表示这是个控制器bean,并且是将函数的返回值直 接填入HTTP响应体中,是REST风格的控制器。
  @Autowired自动导入。
  @PathVariable获取参数。
  @JsonBackReference解决嵌套外链问题。
  @RepositoryRestResourcepublic配合spring-boot-starter-data-rest使用。
  @EnableAutoConfiguration:Spring Boot自动配置(auto-configuration):尝试根据你添加的jar依赖自动配置你的Spring应用。例如,如果你的classpath下存在HSQLDB,并且你没有手动配置任何数据库连接beans,那么我们将自动配置一个内存型(in-memory)数据库”。你可以将@EnableAutoConfiguration或者@SpringBootApplication注解添加到一个@Configuration类上。这个注释告诉SpringBoot“猜”你将如何想配置Spring,基于你已经添加jar依赖项。如果spring-boot-starter-web已经添加Tomcat和Spring MVC,这个注释自动将假设您正在开发一个web应用程序并添加相应的spring设置。动配置被设计用来和“Starters”一起更好的工作,但这两个概念并不直接相关。您可以自由挑选starter依赖项以外的jar包,springboot仍将尽力自动配置您的应用程序。

  @Bean:相当于XML中的bean,放在方法的上面,而不是类,意思是产生一个bean,并交给spring管理。

 

以上是关于SpringBoot-- 知识点介绍的主要内容,如果未能解决你的问题,请参考以下文章

Spring Boot的基础知识

如何利用Spring Boot 整合微信小程序实现登录与增删改查(含代码解析)

SpringBoot-- 知识点介绍

SpringBoot基础系列@Value 之字面量及 SpEL使用知识点介绍篇

SpringBoot | 第六章:常用注解介绍及简单使用

小D课堂 - 零基础入门SpringBoot2.X到实战_第1节零基础快速入门SpringBoot2.0_1SpringBoot2.x课程介绍和高手系列知识点