Spring Boot入门教程1、使用Spring Boot构建第一个Web应用程序
一、前言
什么是Spring Boot?
Spring Boot就是一个让你使用Spring构建应用时减少配置的一个框架。约定优于配置,一定程度上提高了开发效率。https://zhuanlan.zhihu.com/p/22920391
另外Spring是一个IOC框架,如果之前未使用过IOC框架建议先了解下IOC:https://baike.baidu.com/item/%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、使用Maven项目模板创建项目

项目模板:maven-archetype-webapp
GroupId:io.ken.springboot-course
ArtifactId:springboot-course
2、创建Sources Root

(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启动配置

选择应用程序入口类

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即可

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
- 系列名称:Spring Boot入门教程
- 下一篇:Spring Boot入门教程2-1、使用Spring Boot+MyBatis访问数据库(CURD)注解版
- 本篇首次发布:2017-08-13
- 本篇原文链接:https://ken.io/note/springboot-course-basic-helloworld
Spring Boot入门教程1、使用Spring Boot构建第一个Web应用程序的更多相关文章
- Spring Boot 入门教程
Spring Boot 入门教程,包含且不仅限于使用Spring Boot构建API.使用Thymeleaf模板引擎以及Freemarker模板引擎渲染视图.使用MyBatis操作数据库等等.本教程示 ...
- Spring Boot入门教程2-1、使用Spring Boot+MyBatis访问数据库(CURD)注解版
一.前言 什么是MyBatis?MyBatis是目前Java平台最为流行的ORM框架https://baike.baidu.com/item/MyBatis/2824918 本篇开发环境1.操作系统: ...
- Spring Boot入门教程(1)
Spring Boot入门教程(1) 本文将使用Spring Boot一步步搭建一个简单的Web项目来帮助你快速上手. 将要用到的工具 JDK 8 IntelliJ IDEA(Ultimate Edi ...
- spring boot入门教程——Spring Boot快速入门指南
Spring Boot已成为当今最流行的微服务开发框架,本文是如何使用Spring Boot快速开始Web微服务开发的指南,我们将使创建一个可运行的包含内嵌Web容器(默认使用的是Tomcat)的可运 ...
- Java - Struts框架教程 Hibernate框架教程 Spring框架入门教程(新版) sping mvc spring boot spring cloud Mybatis
https://www.zhihu.com/question/21142149 http://how2j.cn/k/hibernate/hibernate-tutorial/31.html?tid=6 ...
- Spring Boot2 系列教程(二十)Spring Boot 整合JdbcTemplate 多数据源
多数据源配置也算是一个常见的开发需求,Spring 和 SpringBoot 中,对此都有相应的解决方案,不过一般来说,如果有多数据源的需求,我还是建议首选分布式数据库中间件 MyCat 去解决相关问 ...
- Spring Cloud 入门教程 - 搭建配置中心服务
简介 Spring Cloud 提供了一个部署微服务的平台,包括了微服务中常见的组件:配置中心服务, API网关,断路器,服务注册与发现,分布式追溯,OAuth2,消费者驱动合约等.我们不必先知道每个 ...
- Spring Cloud 入门教程(七): 熔断机制 -- 断路器
对断路器模式不太清楚的话,可以参看另一篇博文:断路器(Curcuit Breaker)模式,下面直接介绍Spring Cloud的断路器如何使用. SpringCloud Netflix实现了断路器库 ...
- Spring Cloud 入门教程(六): 用声明式REST客户端Feign调用远端HTTP服务
首先简单解释一下什么是声明式实现? 要做一件事, 需要知道三个要素,where, what, how.即在哪里( where)用什么办法(how)做什么(what).什么时候做(when)我们纳入ho ...
随机推荐
- windowsXP下搭建JAVA环境教程
一.工具准备安装JKD6:传送门:http://www.java.net/download/jdk6/6u10/promoted/b32/binaries/jdk-6u10-rc2-bin-b32-w ...
- 过滤Java中特殊字符
过滤Java中特殊字符 /** * @Title:FilterString.java * @Package:com.you.model * @Description:过滤Java中特殊字符 * @Au ...
- 【原】无脑操作:IDEA + maven + SpringBoot + JPA + Thymeleaf实现CRUD及分页
一.开发环境: 1.windows 7 企业版 2.IDEA 14 3.JDK 1.8 4.Maven 3.5.2 5.MariaDB 6.SQLYog 二.Maven设置: Maven目录下的con ...
- [前端]如何写一个水平导航栏?(浮动、inline-block+消除间距)
在看W3school时,看到一个很好的例子,如何制作一个水平的导航栏?没有任何要求,只需要达到下面的效果: 我认为这个例子包含了很多css布局需要了解的知识,因此单独写一下. W3school上面的方 ...
- 【转载】Apache Spark Jobs 性能调优(一)
当你开始编写 Apache Spark 代码或者浏览公开的 API 的时候,你会遇到各种各样术语,比如 transformation,action,RDD 等等. 了解到这些是编写 Spark 代码的 ...
- Android中selector的使用
第一种方法(强烈推荐) 方法:selector做遮罩,原图做background. 我们做按钮的时候经常需要用两个图片来实现按钮点击和普通状态的样式,这就需要提供两种图片,而且每个分辨率下还有多套图片 ...
- js去重
<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8" ...
- 【BZOJ1499】瑰丽华尔兹(动态规划)
[BZOJ1499]瑰丽华尔兹(动态规划) 题面 BZOJ 题解 先写部分分 设\(f[t][i][j]\)表示当前在\(t\)时刻,位置在\(i,j\)时走的最多的步数 这样子每一步要么停要么走 时 ...
- 软件测试必备-前端知识点之html基础
前端必备知识点 第一部分:HTML基础 一. web前端标准 1. 结构标签----html 2. 样式标准,美化----css 3. 行为标准---js 二. 五大浏览器厂商 1. ie 2. 谷歌 ...
- AJAX跨域问题解决思路
ajax跨域问题的解决思路主要分为3种: 1.浏览器限制解决思路:不让浏览器做出限制解决方法:通过指定参数,让浏览器不做跨域校验评价:价值不大,需要每个人都做改动,而且改动是客户端的改动 2.XHR请 ...