介绍
相信许多熟悉spring的小伙伴都经受过spring配置的摧残,尤其对于初学者来说,简直是一脸懵逼的状态。而spring boot 的出现,对于使用spring的童鞋们无疑是一种福音。下面就让我们一起开始spring boot 的体验之旅吧!
IDEA构建项目
新建Spring Initalizr 项目
点击next(注意包名小写)
然后选择web工程
点击finish,即可完成项目构建
当所有的依赖包下载完成之后,大概是这个样子
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>
<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>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.2.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>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
和spring boot 说句hello world 吧
创建DemoController
package com.example.demo;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
/** * Created by pengq on 2018/5/27 13:20 * Description: */
@RestController
public class DemoController {
@RequestMapping(name = "/hello",method = RequestMethod.GET)
public String test(){
return "hello world";
}
}
启动spring boot 的启动类DemoApplication
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);
}
}
观察控制台,会打印出如下log:
Starting DemoApplication on DESKTOP-OLPDM22 with PID 12156 (C:\Users\pengq\Documents\demo\target\classes started by pengq in C:\Users\pengq\Documents\demo)
2018-05-27 13:23:03.289 INFO 12156 --- [ main] com.example.demo.DemoApplication : No active profile set, falling back to default profiles: default
2018-05-27 13:23:03.425 INFO 12156 --- [ main] ConfigServletWebServerApplicationContext : Refreshing org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@5a955565: startup date [Sun May 27 13:23:03 CST 2018]; root of context hierarchy
2018-05-27 13:23:05.349 INFO 12156 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8080 (http)
2018-05-27 13:23:05.411 INFO 12156 --- [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2018-05-27 13:23:05.412 INFO 12156 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet Engine: Apache Tomcat/8.5.31
我们发现spring boot 内置的Tomcat 访问端口为8080,启动成功后打开浏览器访问http://localhost:8080/hello
,如图:
到此,我们的一个简单的web项目已经构建成功,是不是很方便呢?熟悉spring 的小伙伴们可能会有疑问。为什么不是熟悉的@Controller
却变成了@RestController
?不用着急,我们下节会说到。
spring boot 的特点
- 快速创建独立的Spring应用程序。
- 嵌入的Tomcat,不需要部署war文件。
- 简化了Maven的配置。
- 开箱即用,没有代码生成、也不需要XML的配置。
- 是微服务的入门级框架,SpringBoot是SpringCloud的基础。
由于本人也是刚刚开始学习,可能会有些地方不够严谨,欢迎大家指出,谢谢。