您的位置:首页 > 编程语言 > Java开发

Spring Boot快速入门(Hello World)

2017-07-07 00:01 489 查看

Spring Boot是什么?

  Spring Boot是由Pivotal团队提供的全新框架,是基于Spring的升级版。它简化了搭建Spring应用及开发过程。该框架提供了标准化配置,简化了一直受人诟病的各种繁琐、复杂的XML配置,在Spring Boot中约定优于配置。

特点:

简化配置,更容上手,提供大量注解,大大减少开发时间。

开箱即用,提供了Spring应用的各种可修改的默认配置。

部署简单,一键启动。

关注度高,使用人多,文档资料齐全。Spring Boot官方文档

对当下流行的微服务架构有很好的支持。

hello world程序

环境准备

JDK: 1.8.0_92

Maven: 3.5.0

IDE: IntelliJ IDEA

后续会一直使用这个环境。

创建项目

这里我们使用IDEA一键创建spring boot项目。

1. New Project选择Spring Initializr,jdk版本。



2. 填写groupId、artifacte、name等信息。



3. 选择需要的Spring Boot组件。(由于我们只写一个简单的hello world,这里只选择web)



4. 项目创建好后,完整的目录结构:



编写代码

  由于我们使用IDEA创建项目,IDEA已为我们自动引入了所选Spring Boot的组件,还为我们生成了启动类、单元测试类、groupId对应的包、web静态资源文件以及模板文件目录。我们只需要编写Controller,便可以完成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>

<groupId>com.afei.study.springboot</groupId>
<artifactId>springboot_demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>

<name>springboot_demo</name>
<description>Demo project for Spring Boot</description>

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.4.RELEASE</version>
<relativePath/>
</parent>

<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>


  这里生成的pom文件继承自
spring-boot-starter-parent
,并加入了我们选择的web组件依赖
spring-boot-starter-web
。并引入了Spring boot提供的Maven Plugin
spring-boot-maven-plugin
来创建可执行的jar。

  由于
spring-boot-starter-parent
提供了
dependencyManagement
包含了大量配置好的依赖管理,所以这里不需要申明依赖的
<version>
版本号。

SpringbootDemoApplication.java

package com.afei.study.springboot;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class SpringbootDemoApplication {

public static void main(String
4000
[] args) {
SpringApplication.run(SpringbootDemoApplication.class, args);
}
}


Spring Boot推荐我们将启动类放在根包目录下,也就是groupId对应的包名。

@SpringBootApplication
@Configuration
@EnableAutoConfiguration
@ComponentScan
三个注解的组合。

@Configuration
:替代xml中beans,用注解的方式来装配bean。

@EnableAutoConfiguration
:自动载入程序中所需的所有Bean。

@ComponentScan
:定义自动扫描的包,默认为启动类所在的包。

HelloController.java

package com.afei.study.springboot.controller;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {

@GetMapping("hello")
public String hello(){
return "hello, Spring Boot.";
}
}


@RestController
@Controller
@ResponseBody
组合。

@Controller
:定义http请求和控制器的映射关系。

@ResponseBody
: 将Controller的方法返回的对象通过
HttpMessageConverter
转换为指定的格式之后,写入到response对象的body区。

@GetMapping
:是一个组合注解,其作用是将http Get请求映射到处理方法上。同理还有
@PostMapping
@PutMapping
等。

启动项目

通常我们有三种启动Spring Boot程序的方式:

1. 开发中最常用的就是直接运行启动类
Application
的main方法。

2. 使用maven命令:mvn spring-boot:run。

3. 先编译成可执行的jar,再使用java -jar
jar文件名


使用上述任何一种方式启动程序,在浏览器中访问http://localhost:8080/hello,就可以看到效果了。到此,我们已完成Spring Boot的Hello World程序啦!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  spring-boot