Ken的杂谈
  • Ken的杂谈 (current)
  • 关于
  • 杂谈
    Java Spring Spring Boot Spring Cloud MyBatis C# .NET Core .NET ASP.NET Core ASP.NET ClassLibrary Mono 数据库 MySQL SQL Server 网络 缓存 Web Linux CentOS Ubuntu macOS Windows openEuler Nginx ServiceStack JS/JQ 正则 工具 IDE Grafana Exceptions CI/CD Solution 微服务 Arch Docker 杂谈
  • 系列
    Java 快速入门系列教程 Spring Boot 入门教程 Spring Boot 2.x 入门教程 Spring Cloud 入门教程 .NET Core 快速入门教程 ASP.NET Core 2.1 入门教程 CentOS 7 快速上手教程 Ubuntu快速上手入门教程 Hyper-V基础教程 Docker入门教程
  • GitHub

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

Java Spring Spring Boot @ 2017-08-13 01:05:12 · 阅读:(12238)

一、前言

什么是Spring Boot?

Spring Boot就是一个让你使用Spring构建应用时减少配置的一个框架。约定优于配置,一定程度上提高了开发效率。https://zhuanlan.zhihu.com/p/22920391
另外Spring是一个IOC框架,如果之前未使用过IOC框架建议先了解下IOC:https://zh.wikipedia.org/wiki/%E6%8E%A7%E5%88%B6%E5%8F%8D%E8%BD%AC

本篇开发环境

1、操作系统: Windows 10 X64
2、Java SDK: jdk-8u141
3、Maven:3.5
4、IDE:IntelliJ IDEA 2017
5、Spring Boot:1.5.6

二、构建项目

1、创建项目并引入Spring Boot

  • 使用Maven项目模板创建项目

Spring Boot 教程

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

  • 创建Sources Root

Spring Boot 教程

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

  • 在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的依赖等信息

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

(1)创建package:io.ken.springboot.course
(2)创建应用程序类:CourseApplication
(3)增加注解:@SpringBootApplication 并配置启动

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);
    }
}

3、创建测试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!";
    }

}

4、启动配置

菜单:Run->Edit Configurations

Spring Boot 教程

增加Spring Boot启动配置

Spring Boot 教程

选择应用程序入口类

Spring Boot 教程

5、启动项目&访问测试

  • 启动项目

使用快捷键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!

  • 更换运行端口

在/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


  • 系列名称:Spring Boot 入门教程
  • 下一篇:Spring Boot入门教程2-1、使用Spring Boot+MyBatis访问数据库(CURD)注解版

Ken的杂谈

本文由 ken.io 创作,采用CC BY 3.0 CN协议 进行许可。 可自由转载、引用、甚至修改,但需署名作者且注明出处。

Java Spring Spring Boot

随笔目录


    © Copyright 2012-2025 Ken的杂谈

    豫ICP备10025012号

    ASP.NET Core(6.0) on Linux