Spring boot简单介绍和使用

 

Spring Boot 第一章

 

  1. Spring Boot 介绍

 

  1. 构建 Spring Boot 项目及启动器讲解

 

  1. Spring Boot 入门 HelloWorld

官网地址https://start.spring.io

 

 

 

一,Spring Boot 介绍

 

SpringBoot是由Pivotal团队在2013年开始研发、2014年4月发布第一个版本的全新开源的轻量级框架。它基于Spring4.0设计,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程。另外SpringBoot通过集成大量的框架使得依赖包的版本冲突,以及引用的不稳定性等问题得到了很好的解决。

特点

SpringBoot所具备的特征有:

(1)可以创建独立的Spring应用程序,并且基于其Maven或Gradle插件,可以创建可执行的JARs和WARs;

(2)内嵌Tomcat或Jetty等Servlet容器;

(3)提供自动配置的starter(启动器)项目对象模型(POMS)以简化Maven配置;

(4)尽可能自动配置Spring容器;

(5)提供准备好的特性,如指标、健康检查和外部化配置;

(6)绝对没有代码生成,不需要XML配置。

 

 

1,如果使用 Spring 开发一个"HelloWorld"的 web 应用:

 

  • 创建一个 web 项目并且导入相关 jar 包。SpringMVC Servlet

 

 

  • 编写一个控制类(Controller)

 

  • 需要一个部署 web 应用的服务器 如 tomcat

 

2,Spring Boot 特点:

 

  • Spring Boot 设计目的是用来简化新 Spring 应用的初始搭建以及开发过程。

 

  • 嵌入的 Tomcat,无需部署 WAR 文件

 

  • Spring Boot 并不是对 Spring 功能上的增强,而是提供了一种快速使用 Spring 的方式。


二,构建 Spring Boot 项目及启动器讲解

 

 

1.使用 maven 构建 SpringBoot 项目(jar)

 

 

 

 

 

2.修改 pom 文件 将 jdk 的版本更新为 1.8

 

 <!-- 修改jdk版本 -->

  <properties>

        <java.version>1.8</java.version>

  </properties>

 

 

 

 

 

3.注入 SpringBoot 启动坐标

<parent>

    <groupId>org.springframework.boot</groupId>

    <artifactId>spring-boot-starter-parent</artifactId>

    <version>2.1.9.RELEASE</version>

</parent>

<!-- springBoot的web启动器 -->

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-web</artifactId>

 

</dependency>

 

<!-- jsp相关jstl -->

  <dependency>

    <groupId>javax.servlet</groupId>

    <artifactId>jstl</artifactId>

  </dependency>

  

  <!-- jasper -->

  <dependency>

    <groupId>org.apache.tomcat.embed</groupId>

    <artifactId>tomcat-embed-jasper</artifactId>

    <scope>provided</scope>

  </dependency>

 

 

 

 

4.SpringBoot 启动器。

 

所谓的 springBoot 启动器其实就是一些 jar 包的集合。SprigBoot 一共提供 44 种启动器。

 

44种基本的启动器:

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。

 

Spring Boot应用启动器面向生产环境的还有2种,具体如下:

 

1)spring-boot-starter-actuator

增加了面向产品上线相关的功能,比如测量和监控。

 

2)spring-boot-starter-remote-shell

增加了远程ssh shell的支持。

 

最后,Spring Boot应用启动器还有一些替换技术的启动器,具体如下:

 

1)spring-boot-starter-jetty

引入了Jetty HTTP引擎(用于替换Tomcat)。

 

2)spring-boot-starter-log4j

支持Log4J日志框架。

 

3)spring-boot-starter-logging

引入了Spring Boot默认的日志框架Logback。

 

4)spring-boot-starter-tomcat

引入了Spring Boot默认的HTTP引擎Tomcat。

 

5)spring-boot-starter-undertow

引入了Undertow HTTP引擎(用于替换Tomcat)

 

 

三,Spring Boot 入门 HelloWorld

 

 

 

 

2.启动 SpringBoot 编写启动类

注解:

@SpringBootApplication开启了Spring的组件扫描和Spring Boot的自动配置功能

 

 

 

3.关于编写启动器需要注意的问题

 

启动器存放的位置。启动器可以和 controller 位于同一个包下,或者位于 controller 的上一级包中,但是不能放到 controller 的平级以及子包下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值