一、Spring Boot 简介
Spring Boot 是一个可以使用Java构建微服务的微框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。因此,使用Spring Boot将能够以更灵活的方式开发Spring应用程序,并且能够通过最小(或可能没有)配置Spring来专注于解决应用程序的功能需求。
(注:关于Spring Boot的更多介绍可以参考官网:http://spring.io/projects/spring-boot)
二、Spring Boot 特性
1、直接嵌入Tomcat,Jetty或者Undertow 作为 Servlet Container。(再也无需将项目打包成WAR文件再部署到Application Server里面)
2、提供了Starter POM ,方便于包的管理,很大程度上减少了jar包的冲突和依赖冲突。
3、尽可能自动进行Spring框架配置以及第三方库的一些配置,节省了程序员大量时间,可以更专注于业务逻辑代码的编写。
4、提供生产环境的程序状态信息和健壮检查。
5、可以非常方便的读取到外部的配置信息,不需要任何代码的自动生成,也不需要用XML进行框架的配置。
三、快速创建Spring Boot 应用程序
创建Spring Boot 项目可以有以下三种方式:
1、通过IDEA或Eclipse的Spring Initializr创建
2、通过在线网站 http://start.spring.io/ 创建Spring Boot的项目骨架
3、自己手动搭建
下面将逐一介绍以上三种创建Spring Boot应用程序的方法。
四、使用IDEA的Spring Initializr创建Spring Boot应用程序
1、首先,打开IDEA,点击 Create New Project , 弹出以下窗口,选择左边栏目的 Spring Initializr ,右边栏选择项目SDK(Java JDK),Initializr Service Url 使用默认的 http://start.spring.io/ 即可,点击Next:
2、接下来 可以 根据自己需要填写项目坐标信息,以及项目构建类型(Maven 或者 Gradle,这里我使用默认的),点击Next:
3、出现下面页面,我们可以在这里选择添加自己项目里所需要的一些依赖库,这里我只添加了web,也可以后面自行在pom.xml中自己添加,继续点击Next:
4、填写项目名称以及项目路径,点击Finish完成项目创建:
5、创建完成后,我们可以看到Spring Boot的项目结构如下:
6、此时,我们的一个简单的Spring Boot项目就创建完成了,下面我们通过写一个Control来演示运行整个应该程序。
1)创建一个Control Java类:
package com.example.demo;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class HelloControl {
@RequestMapping("/hello")
@ResponseBody
public String hello(){
return "hello spring boot";
}
}
2)、运行主程序入口 DemoApplication.java ,启动我们的web项目:
package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
3)、浏览器访问:http://localhost:8080/hello , (默认端口:8080),可以看到返回了我们预期的结果:
7、修改项目端口,打开项目demo\src\main\resources\application.properties 配置文件,添加 server.port=<自己端口>,重启项目即可生效,关于application.properties 更多配置参数会在后续继续讲解,如想了解更多,可自行查看官方文档。
server.port=8082
五、通过在线网站 http://start.spring.io/ 创建Spring Boot的项目骨架
浏览器访问http://start.spring.io/ ,选择相应项目类型、版本,填写项目信息,点击 Switch to the full version.,下方出现更多可填可选信息,勾上web依赖,最后点击Generate按钮,下载后解压项目,导入IDEA,可以看到此种创建方式与上面创建的项目结构完全一样,此处不再多讲。
六、手动搭建Spring Boot项目
1、第一步,首先创建一个普通的Maven项目,点击Create New Project, 选择左边栏的Maven, 在右边栏,勾上Create from archetype , 选中下方的 org.apache.maven.archetypes:maven-archetype-quickstart (因为Spring Boot项目打包之后是一个jar包,而不是war包,所以这里我们应该选中quickstart, 而不是org.apache.maven.archetypes:maven-archetype-webapp),点击Next:
输入项目坐标、版本号信息等,点击Next ,
选择Maven配置文件,选择Maven仓库地址,点击Next:
输入项目名称,以及项目路径,点击Finish完成项目创建:
2、第二步,完成以上步骤,我们得到的项目仅仅是一个普通的Maven项目而已,接下来,我们自己将开始配置我们的SpringBoot项目,首先,配置我们的Pom.xml文件:
添加spring-boot-starter-parent 作为项目的父依赖。
添加 spring-boot-starter-web 依赖 ,此处不需要填写版本号,因为SpringBoot提供了统一的依赖版本号管理。
<?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>
<groupId>com.example</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>demo</name>
<description>Demo project for Spring Boot</description>
<!--添加spring boot 作为项目的父依赖-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.4.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<!--添加 web 依赖 ,此处不需要填写版本号,因为SpringBoot提供了统一的依赖版本号管理-->
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
</project>
3、第三步,编写Control:
package com.example.demo;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class HelloControl {
@RequestMapping("/hello")
@ResponseBody
public String hello(){
return "hello spring boot";
}
}
4、第四步,编写SpringBoot程序主入口 SpringBootApplication:
package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
5、运行程序主入口,浏览器访问http://localhost:8080/hello,同样可以得到预期的结果。如果需要配置自己的端口号等一些配置信息,则可以参照以上创建一个application.properties配置文件。
今天的SpringBoot学习教程就写到这了,后续会继续更新,欢迎关注点评,谢谢!