一、SpringBoot简介。
SpringBoot是由Pivotal团队在2013年开始研发、2014年4月发布第一个版本的全新开源的轻量级框架。它基于Spring4.0设计,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程。另外SpringBoot通过集成大量的框架使得依赖包的版本冲突,以及引用的不稳定性等问题得到了很好的解决。
二、SpringBoot的优点。
- 创建独立的Spring应用程序。
- 嵌入的Tomat,Jetty或者Unsertow,无需部署WAR文件。
- 允许通过Maven来根据需要获取starter。
- 尽可能的自动配置Spring。
- 提供生产就绪型功能,如指标、健康检查和外部配置。
- 绝对没有代码生成,对XML没有要求配置。
三、创建第一个SpringBoot项目—HelloWorld。
这里是创建的Maven工程,也可以使用Spring Initializer快速创建Spring Boot项目。
(1)
(2)选择Maven,这里用的JDK版本是1.8。点击Next
(3)点击Next。
(4)填写完成——Finsh。完成创建。
(5)创建完成后目录如图所示:
(6)导入SpringBoot的相关依赖。
在pom.xml
文件中添加下列依赖。
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.9.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
<!-- 下面插件,把应用打包成一个可执行的jar包-->
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
(7)编写主程序,启动Spring Boot应用。
@SpringBootApplication
public class HelloWorldApplication {
public static void main(String[] args) {
SpringApplication.run(HelloWorldApplication.class, args);
}
(8)编写Controller。
package com.example.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class HelloController {
@ResponseBody
@RequestMapping("/hello")
public String hello(){
return "hello world";
}
}
(9)测试。
运行编写的主程序,启动Spring Boot项目。
在浏览器访问:http://127.0.0.1:8080/hello
附:使用Spring Initializer快速创建Spring Boot项目。
创建完成后目录结构:
四、Spring Boot的简化部署。
把Spring Boot项目打包成jar包。
(1)在pom.xml文件中依赖:(上一步已经添加)
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
(2)打开右侧Maven——>运行package。
注:可以看到,在项目的target目录下已经完成。
(3)这里我把该jar包复制到桌面上,cmd切换到该路径;执行:
java -jar spring-boot-01-helloWorld-1.0-SNAPSHOT.jar