前言
SpringBoot系列suos所使用的的SprinBoot都是基于SpringBoot2.x进行阐述。
Spring与SpringBoot
在Servlet3.0规范的提出,web容器可以脱离web.xml的部署,使得web容器完全可以基于注解开发。特别是Spring4.x之后zhu注解功能越来越强大,在此基础上SpringBoot注解开发就占据主流的地位。此时Pivotal团队在原有的Spring基础上主要tong通过注解方式继续jian简化了SpringBoot的开发,他们基于SpringBoot的ji基础上开发了SpringBoot。故,SpringBoot不是新的框架,也并非替代了的Spring框架,而是让Spring框架变得更加容易地使用,它封装许多web开发场景中所需要使用的模块,简化了xml的模板化配置。总结上述,SpringBoot是站在了巨人的肩膀上,让我们web开发更加容易和便捷。SpringBoot的核心思想“约定大约配置”
SpringBoot与SpringCloud
随着“微服务架构理念”的提出,许多传统的行业就朝着微服务架构方向出发。此时SpringBoot的heng横空出世,更是让微服务的开发变得更加容易。微服务提倡的是将一个传统dan单体应用,按照业务划分成一个个微小的、可以独立运行、独立部署、有着自己的数据的应用。而SpringCloud目前来说微服务治理的一套完整的框架,依赖着SpringBoot来实现。所以说SpringCloud依赖着SpringBoot,但是SpringBoo不依赖SpringCloud,可以单独使用。
SpringBoot的优点
从官方提出的理念来看
- 创建了独立的Spring 应用程序
- 其web容器(Tomcat,Jetty等)都是嵌入的,无需将xx.war文件部署到web容器中(当然您想部署war包也支持)
- 允许通过Maven来获取特定应用场景(xxx-starter)
- 尽可能地自动配置Spring
- 提供生产就绪型功能,如健康检查和外部配置
- 对xml没有要求配置(当然你也可加入xx.xml配置,比如在整合Mybatis的时候,xxxMaper.xml就需要)
搭建第一个SpringBoot版本的Hello-world
项目结构大概如下
pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<!--引入SpringBoot起步依赖-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.3.RELEASE</version>
</parent>
<groupId>com.walkingworld</groupId>
<artifactId>springboot-chapter1</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>jar</packaging>
<properties>
<!-- Environment Settings -->
<java.version>1.8</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
</properties>
<dependencies>
<!-- SpringBoot Begin-->
<!--引入web开发场景:这里封装了许多web开发所用的jar-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- SpringBoot Begin-->
</dependencies>
<build>
<!-- 添加spring-boot的maven插件,不能少,打jar包时得用 -->
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
application.yml
server:
port: 8001
启动类:Chapter1Application.java
package com.walkingworld.springboot.chapter1;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* SpringBoot应用 的启动类
*/
@SpringBootApplication
public class Chapter1Application {
public static void main(String[] args) {
SpringApplication.run(Chapter1Application.class,args);
}
}
运行SpringBoot应用
至此已搭建成功了,,,,,