代码改变世界

Spring Boot入门教程1、使用Spring Boot构建第一个Web应用程序

2018-03-27 18:13  KenTalk  阅读(871)  评论(0编辑  收藏  举报

一、前言

构建项目

  • 创建项目

1、使用Maven项目模板创建项目

Spring Boot 教程

项目模板:maven-archetype-webapp
GroupId:io.ken.springboot-course
ArtifactId:springboot-course

2、创建Sources Root

Spring Boot 教程

(1)在src/main创建文件夹:java,并使用右键菜单Mark Directory AS->Sources Root
(2)设置将src/resources Mark:使用右键菜单Mark Directory AS->Resources Root

3、在pom.xml中引入spring-boot

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.5.6.RELEASE</version>
</parent>
<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
</dependencies>

Ctrl + 鼠标左键点击 groupId/artifactId 可以查看引用的Packge的依赖等信息

4、创建应用程序类&应用程序入口

(1)创建package:io.ken.springboot.course
(2)创建应用程序类:CourseApplication

package io.ken.springbootcourse;

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

@SpringBootApplication
public class CourseApplication {

    public static void main(String[] args) throws Exception {
        SpringApplication.run(CourseApplication.class, args);
    }
}

5、创建Controller

(1)创建package:io.ken.springboot.course.controller
(2)创建控制器:HelloController

package io.ken.springbootcourse.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class HelloController {

    @RequestMapping("/")
    @ResponseBody
    String index() {
        return "Hello World!";
    }

}

6、运行配置

Run->Edit Configurations

Spring Boot 教程

增加Spring Boot启动配置

Spring Boot 教程

选择应用程序入口类

Spring Boot 教程

7、 启动

使用快捷键Shift+F10启动即可
(或者在CourseApplication编辑区,使用右键菜单->Run “CourseApplication”启动)

控制台输出片段:

 [main] o.s.j.e.a.AnnotationMBeanExporter        : Registering beans for JMX exposure on startup
 [main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http)
 [main] i.k.springboot.course.CourseApplication  : Started CourseApplication in 1.999 seconds (JVM running for 2.555)

从输出的信息可以看出,Spring Boot也是跑在Tomcat中的,关键是本机不用安装也不用做任何Tomcat的配置。就可以跑起来。这一点就很爽了。想知道Spring Boot还依赖了那些组件,在Pom.xml文件中Ctrl+鼠标单击org.springframework.boot即可

访问http://localhost:8080

Spring Boot 教程

Hello World!

8、更换运行端口

在/src/main/resources下新建配置文件application.yml

文件内容:

server:
  port: 8080

有了Spring Boot,构建Web应用程序So Easy!
赶紧去试试,嘿嘿~

三、备注

  • Spring注解说明
注解ken.io的说明
@SpringBootApplication 等价于使用@Configuration@EnableAutoConfiguration 和 @ComponentScan默认属性的情况。
@Controller 用于定义控制器类
@RestController 等价于@ResponseBody@Controller
@RequestMapping 用于定义路由,也就是Url与Controller方法的映射
@ResponseBody 表示将结果直接填充到HTTP的响应体中,用于构建API
@EnableAutoConfiguration 将根据添加的jar依赖自动配置Spring,比如我们的应用依赖于spring-boot-starter-web,而它又依赖Tomcat和Spring MVC,有了这个注解,Spring boot将自动进行相关配置
@ComponentScan 表示将该类自动扫描并注册为Bean
@Configuration 用于定义配置文件类,可以将配置类替换xml配置

本文代码示例:https://github.com/ken-io/springboot-course/tree/master/chapter-01-01