Spring Boot 简介

提供了四个主要的特性,能够改变开发Spring应用程序的方式:

  • Spring Boot Starter : 将常用的依赖分组进行整合,将其合并到一个依赖中,可以以此行添加到项目的Maven或Gradle构建中。
  • 自动配置: Spring Boot的自动配置特性利用了 Spring 4 对条件化配置的支持,合理地推测应用所需的bean并自动化配置它们;
  • 命令行接口 (Command-line interface, CLI ) : Spring Boot 的 CLI 发挥了 Groovy 编程语言的优势,并结合自动配置进一步简化 Spring 应用的开发;
  • Actuator : 它为 Spring Boot 应用添加了一定的管理特性。

创建一个新的Spring 应用。

  1. 是一个Web项目,因此需要使用 Spring MVC.
  2. 需要 REST API 将资源暴露为 JSON, 所以在构建中需要包含 Jackson JSON 库。
  3. 应用需要使用JDBC 从关系型数据库中存储和查询数据,因此确保包含了 Spring 的 JDBC 模块。JdbcTemplate .
  4. Spring 的事务模块。
  5. 使用 H2 数据库。
  6. 使用 Thymeleaf 建立 Spring MVC 视图。

Starter 依赖的内部原理,工作方式,使用了 Maven 和 Gradle 的依赖传递方案, Starter 在自己的 pom.xml 文件中声明了多个依赖。

依赖是传递性的,例如 mobile Starter 就引用了 Web Starter, 后者引用了 Tomcat Starter .

Spring Boot 的 Starter 减少了构建中依赖列表的长度,而 Spring Boot 的自动配置功能则削减了 Spring 配置的数量。

使用 Thymeleaf 模板作为 Spring MVC 的视图,至少需要三个bean :

ThymeleafViewResolver , SpringTemplateEngine , TemplateResolver

但是使用Spring Boot 自动配置, 仅需要将 Thymeleaf 添加到项目的 类路径中。

Spring Boot Starter 会触发自动配置, 要使用 Spring MVC 的话,需要的仅是将 Web Starter 作为依赖放到构建中。会自动添加 Spring MVC 依赖。如果 Spring Boot 的 Web 自动配置探测到 Spring MVC 位于类路径下,会自动配置支持 Spring MVC 的多个 bean,包括 视图解析器、资源处理器、消息转换器 等。

Spring Boot CLI 能够自动导入 Spring 类型并解析依赖。

Actuator

带来的特性:

  • 管理端点;
  • 合理的异常处理以及默认的“/error" 映射端点。
  • 获取应用信息的 ”/info“端点
  • 当启用 Spring Security 时,会有一个审计事件框架。

Software--Spring Boot--Contact 项目初期的更多相关文章

  1. Spring Boot 商城项目

    Spring Boot 商城项目 angularJS Demo1 <html> <head> <title>angularJS Demo1</title> ...

  2. SpringCloud 微服务一:spring boot 基础项目搭建

    spring cloud是建立在spring boot的基础上的,而之前虽然听说过,也随便看了一下spring boot,却没有真正使用,因此还必须先花时间学一下spring boot. spring ...

  3. 有哪些值得学习的spring boot开源项目?

    1. awesome-spring-boot 首先给大家介绍的就是Spring Boot 中文索引,这是一个专门收集 Spring Boot 相关资料的开源项目,也有对应的导航页面. 产品主页 htt ...

  4. 15 个优秀开源的 Spring Boot 学习项目,一网打尽!

    Spring Boot 算是目前 Java 领域最火的技术栈了,松哥年初出版的 <Spring Boot + Vue 全栈开发实战>迄今为止已经加印了 8 次,Spring Boot 的受 ...

  5. Spring boot Gradle项目搭建

    Spring boot Gradle项目搭建 使用IDEA创建Gradle工程     操作大致为:File->new->Project->Gradle(在左侧选项栏中)     创 ...

  6. 【spring】1.2、Spring Boot创建项目

    Spring Boot创建项目 在1.1中,我们通过"Spring Starter Project"来创建了一个项目,实际上是使用了Pivotal团队提供的全新框架Spring B ...

  7. 15 个优秀开源的 Spring Boot 学习项目

    Spring Boot 算是目前 Java 领域最火的技术栈了,松哥年初出版的 <Spring Boot + Vue 全栈开发实战>迄今为止已经加印了 8 次,Spring Boot 的受 ...

  8. 最近做的一个Spring Boot小项目,欢迎大家访问 http://39.97.115.152/

    最近做的一个Spring Boot小项目,欢迎大家访问 http://39.97.115.152/,帮忙找找bug,网站里有源码地址 网站说明 甲壳虫社区(Beetle Community) 一个开源 ...

  9. 1.spring boot初始化项目

    初始化spring boot项目的方式非常多,如使用Spring Tool Suite.使用IntelliJ IDEA.使用NetBeans.在start.spring.io网站中.curl命令.sp ...

  10. 【spring boot】spring boot的自定义banner修改+spring boot启动项目图标修改

    1.启动Spring Boot项目后会看到这样的图案,这个图片其实是可以自定义的,打开网站 http://patorjk.com/software/taag/#p=display&h=3&am ...

随机推荐

  1. 生成数据库文档 —— Spring Boot + Screw

    1.创建一个SpringBoot项目(本人使用的是IntelliJ IDEA 2020.1 x64) 最佳简单的项目配置如下: 2.添加相关依赖 <!--screw依赖--> <de ...

  2. T137223 节能主义

    设平均数为$x$,那么有差值数组$b_i=a_i-x$. 考虑用类似于均分纸牌的方法来解决本题,从左到右依次考虑每堆书,直接乘上预处理好的组合数,然后清零$b_i$. 在实际操作中,将冗余的操作忽略, ...

  3. HBase建命名空间建表

    public class HBaseDDL { //声明一个静态属性 static public Connection conn = HBaseConnection2.conn; /** * 创建命名 ...

  4. Generative Adversarial Network - Python实现

    算法特征 ①. discriminator区别真假; ②. generator以假乱真 算法推导 Part Ⅰ: 熵之相关定义 entropy之定义如下, \[\begin{equation*} H( ...

  5. 【转载】rename。给文件批量改名的python脚本

    https://www.bilibili.com/read/cv16146757 确认py版本:2.7, 3.6? 1 import os, sys, re, math, openpyxl, csv ...

  6. (0501) perl-正则表达式-匹配关键字task【知乎】

    (1)

  7. js引入样式资源报错

    如上图,import这几个样式资源为什么会报错,怎么解决呢,而且那个jquery-ui之前也会报错但是现在刷新一遍他又不报错了其他的css文件报错 图片转代码服务由CSDN问答提供 功能建议   im ...

  8. usb 2.0 packet

    注意PID[7:0] = {~pid[3:0], pid[3:0]}

  9. 写入到Excel表格文件当中,导出/导入数据

    /// <summary> /// 写入到Excel表格文件当中,导出数据 /// </summary> /// <param name="dt"&g ...

  10. 关于安装hadoop时在centos上修改主机名总是不成功

    按照老师给的文件和网上搜的代码改了很多次,比如改/etc/sysconfig/network这些,无论改几次都没用,找了个帖子,说可能是因为 CentOS7版本由于与之前版本变化比较大,修改主机名的方 ...