十万个为什么之什么是SpringBoot

1.什么是springboot

简单的说: spring boot就是整合了spring大家族衍生框架(Spring,SpringMVC...)各优点的一个新框架;

a)一种全新的编程规范,简化了框架的使用,去除Spring众多框架中所需的大量且繁琐的配置文件 --- "习惯优于配置";

b)敏捷开发Spring应用程序,专注于应用程序功能 -- 可独立运行(运行jar,内嵌Servlet容器); 

2.Spring Boot 独特性

鉴于有很多误解,特区分下和我们常用用于有什么区别

  •  Spring Boot更多的是采用Java Config的方式,对Spring进行配置。
  • 配置简单
    • 基于注解,及config
    • yml文件;
  • 部署简单
    • 一键启动
    • java -jar standalone.jar
  • 监控简单: springBoot-actuator
    • 查看属性配置
    • 线程工作状态
    • 环境变量
    • JVM性能指标
    • RESTFul Path与服务类的映射关系
    • ...

3.Spring Boot核心

  • 自动配置 : 针对很多Spring应用程序常见功能,SpringBoot能自动提供相关配置;

以往,在任何的spring项目中,你都会找到Java配置或一大堆的XML配置文件,它们为应用程序开启了特定的特性和功能。看以下几个例子: 
1.  web.xml

这里写图片描述

2.jdbcTemplate

这里写图片描述

3.事务管理

这里写图片描述

在以上三个例子中,很多配置都是复杂并且模板化,这提高了我们开发的成本。而在springboot中这些都自动为我们做好了,让开发人员更加专注于业务需求的开发。

  • 起步依赖: 告诉Spring Boot需要什么功能

 

  • 命令行界面: SpringBoot可选特性,无需传统创建,快速搭建项目
  • Actuator: 提供在运行时检视应用程序内部情况的能力

Actuator则要提供在运行时检视应用程序内部情况的能力。安装了Actuator就能窥探应用程序的内部情况了,包括如下细节:

  1. Spring应用程序上下文里配置的Bean
  2. Spring Boot的自动配置做的决策
  3. 应用程序取到的环境变量、系统属性、配置属性和命令行参数
  4. 应用程序里线程的当前状态
  5. 应用程序最近处理过的HTTP请求的追踪情况
  6. 各种和内存用量、垃圾回收、Web请求以及数据源用量相关的指标

Actuator通过Web端点和shell界面向外界提供信息。如果要借助shell界面,你可以打开SSH(Secure Shell),登入运行中的应用程序,发送指令查看它的情况。

  • 内嵌容器: 可独立运行
  • YML配置文件: 区别于传统Properties文件方式

传统项目中使用properties文件作为key-value的载体,但其缺点也是明显的。会重复的进行链式配置,而YML文件则避免了这个问题。

Properties文件方式

#Properties配置数据库连接
spring.datasource.url=jdbc:mysql://localhost:3306/config
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

Yml文件方式

#YML配置数据库连接
Spring:
Datasource: 
    url: jdbc:mysql://localhost:3306/config
    username: root
    password: 123456
    driver-class-name: com.mysql.jdbc.Driver

 

这里发现一个有意思的 springoot中文文档,也很详细了;

http://blog.geekidentity.com/spring/spring_boot_translation/

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章