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(一)-- 知识点介绍的更多相关文章
- SpringBoot常用Starter介绍和整合模板引擎Freemaker、thymeleaf 4节课
1.SpringBoot Starter讲解 简介:介绍什么是SpringBoot Starter和主要作用 1.官网地址:https://docs.spring.io/spring-boot/doc ...
- Springboot学习:介绍与HelloWorld
1. 什么是 Spring boot Spring Boot来简化Spring应用开发,约定大于配置,去繁从简,just run就能创建一个独立的,产品级别的应用 整个Spring技术栈的一个大整合 ...
- Spring和Springboot相关知识点整理
简介 本文主要整理一些Spring & SpringBoot应用时和相关原理的知识点,对于源码不做没有深入的讲解. 1. 思维导图 右键新窗口打开可以放大. 说明 使用@Configurati ...
- c语言学习之基础知识点介绍(十):数组
本节主要介绍数组. 一.数组 /* 数组:一个变量可以存n个变量. 语法:类型 数组名[长度(正整数)]; 例如:int score[5];//定义了一个int类型的数组,长度为5,可以保存5个数据. ...
- c语言学习之基础知识点介绍(七):循环结构
本节主要介绍循环结构 一.while循环 /* 语法: while(表达式){ //循环体; } 注意:循环变量.循环条件和循环控制语句三者缺一不可. 例如: */ ; //循环变量 ){ //循环条 ...
- c语言学习之基础知识点介绍(三):scanf函数
本节继续介绍c语言的基础知识点. scanf函数:用来接收用户输入的数据. 语法:scanf("格式化控制符",地址列表); 取地址要用到取地址符:&(shift+7) 例 ...
- c语言学习之基础知识点介绍(二):格式化控制符和变量的补充
上节简单介绍了c语言中的一些基础知识点,本节将对之前介绍的不够详细的知识点进行补充. 格式化控制符的消息介绍: %d的其他控制符: 1.%md:m代表这个整数位占用多少位,m是一个整数.实际数字不足的 ...
- (一)SpringBoot基础篇- 介绍及HelloWorld初体验
1.SpringBoot介绍: 根据官方SpringBoot文档描述,BUILD ANYTHING WITH SPRING BOOT (用SPRING BOOT构建任何东西,很牛X呀!),下面是官方文 ...
- SpringBoot项目结构介绍
一项目结构介绍 springboot框架本身对项目结构并没有特别的要求,但是按照最佳的项目结构可以帮助我们减少可能遇到的错误问题.结构如下: (1)应用主类SpringbootApplication应 ...
随机推荐
- Android跳转系统界面_大全集
1.跳转Setting应用列表(所有应用) Intent intent = new Intent(Settings.ACTION_MANAGE_ALL_APPLICATIONS_SETTINGS); ...
- HBase Rowkey的散列与预分区设计
转自:http://www.cnblogs.com/bdifn/p/3801737.html 问题导读:1.如何防止热点?2.如何预分区?扩展:为什么会产生热点存储? HBase中,表会被划分为1.. ...
- SpannableString
http://blog.csdn.net/fengkuanghun/article/details/7904284 背景介绍 在开发应用过程中经常会遇到显示一些不同的字体风格的信息犹如默认的LockS ...
- 安装OpenSSL缺失Microsoft Visual C++ 2008 Redistributables的解决方案
在安装OpenSSL的时候通常会提示以下错误: "The Win32 OpenSSL Installation Project setup has detected that the fol ...
- ACTIVE NEURAL LOCALIZATION
用贝叶斯滤波器定义状态,用rl帮助定位. 这个方法需要对地图和角度进行离散化,当地图很大,角度较精细时,输出会很大,所以不太可能用到大地图,高精度角度的任务上.
- 推荐vue.js、layer.js、axios.js
都是很简单又很实用的东西. vue.js,前端双向绑定框架. layer.js,前端遮罩层框架.(layui的一部分,可单独使用) axios.js,异步请求框架,用起来比jQuery的ajax舒服一 ...
- CI框架 -- 文件结构
这个本来是很基础的东西,基本上用过CI的人都知道这些,原本是不消说的~但是因为毕业论文是关于CodeIgniter的,所以我必须把大大小小的东西都写出来做成记录~ CodeInigter,一个轻量,功 ...
- spring cloud feign 上传文件报not a type supported by this encoder解决方案
上传文件调用外部服务报错: not a type supported by this encoder 查看SpringFormEncoder类的源码: public class SpringFormE ...
- glsl 全屏 uv 旋转
原图 只是把fbo后的uv扭个角度就行了
- iOS: block参数
先看一下 NSArray 是怎么传递 block 参数的 ... @interface NSArray (NSExtendedArray) … #if NS_BLOCKS_AVAILABLE - (v ...