由于公司最近在做技术转型(从.Net转Java),因此自己也开启了学习Java之路。学习Java怎么能不学习这几年这么火的Spring Boot框架,由于自己有总结的习惯,因此会把学习的过程以博客的形式分享出来,

一来加深自己理解,二来希望能帮助到有需要的同学。

文章中如有不对之处,欢迎各位指出,届时我会及时修改。

1.创建Spring Boot项目

说明:我这里使用的开发软件是IDEA。

首先在启动页选择"Create New Project"

然后左侧选中“Spring Initializr”,右侧选择好SDK的版本,然后点击“Next”

这里首先会看到默认的项目信息

按照自己的需要修改Group(可理解为组织,一般为域名反过来,如zwwhnly.com,这里就是com.zwwhnly)和Artifact(可理解为项目名)

我这里将Group修改为:com.zwwhnly

Artifact修改为:springbootdemo

然后点击下一步“Next”

这里我们先选择好依赖项“Web”和Spring Boot的版本,如图默认为2.1.2,

然后点击下一步“Next”

修改好项目名称和项目路径后,点击完成“Finish”,如果路径不存在,可能会提示你是否要自动创建目录,点击OK即可

因为要加载一些依赖项,需要等一会才能创建成功,项目创建好的结构为:

找到启动类SpringbootdemoApplication(一般为Group+Artifact+Application),看到默认代码如下:

package com.zwwhnly.springbootdemo;

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

@SpringBootApplication
public class SpringbootdemoApplication {

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

在启动类中右键,运行项目,看到如下信息

打开浏览器,输入:http://localhost:8080/,会看到如下页面

暂时在启动类中写一个接口映射, 如下所示:

package com.zwwhnly.springbootdemo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@SpringBootApplication
public class SpringbootdemoApplication {

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

    @RequestMapping
    public String hello() {
        return "Hello Spring Boot!";
    }
}

再次运行项目,访问http://localhost:8080/,会看到如下信息,代表项目可以成功访问。

说明:关于@RestController和@RequestMapping在后续博客中讲解。

2.关闭Banner

其实刚刚项目启动时我们已经看到了Spring Boot的Banner,那么你不禁要问什么是Spring Boot的Banner呢?其实就是下图中红色标记的地方

也许有人会觉得每次启动都显示这些信息并没有实际意义,那么我们如何关闭它呢?

方式1:修改启动类main方法代码

原代码:

SpringApplication.run(SpringbootdemoApplication.class, args);

修改后:

SpringApplication springApplication = new SpringApplication(SpringbootdemoApplication.class);
springApplication.setBannerMode(Banner.Mode.OFF);
springApplication.run(args);

方式2:修改application.properties文件

默认情况下,新建的项目里application.properties文件是空的,增加如下配置:

spring.main.banner-mode=off

关闭后的效果如下图所示:

个人建议通过方式2修改配置文件的方式关闭。

3.使用yaml配置文件

Spring Boot默认生成的配置文件为application.properties,其实application.yml和application.properties差别并不大,只是层次结构明显,可读性更强,因此目前使用的更多一些。

我们假设本来application.properties的配置为:

server.port=8082

那么如何将配置文件切换为application.yml呢?

首先删除掉原来的默认配置文件application.properties,新增配置文件application.yml,新增方式如下:

修改application.yml为:

server:
  port: 8082

注意事项:port后面的:和8082之间是有一个空格的,不能省略

如果不小心将空格省略,其实IDEA也能识别出来,不过并不显示错误,也不影响启动,

我们现在把配置文件修改为错误的(把空格省略),然后启动项目

我们会发现项目虽然正常启动成功,不过配置的端口号8082并未生效,启动的还是默认的端口号8080。

因此使用yaml配置文件一定要注意值前面的空格问题。

4.源码地址

https://github.com/zwwhnly/springbootdemo.git,欢迎大家下载,有问题可以多多交流。

5.参考链接

使用idea创建第一个springboot项目

Spring Boot-关闭Banner

关闭spring boot的banner

SpringBoot yml 配置

Spring Boot入门(一):使用IDEA创建Spring Boot项目并使用yaml配置文件的更多相关文章

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

    一.前言 什么是Spring Boot?Spring Boot就是一个让你使用Spring构建应用时减少配置的一个框架.约定优于配置,一定程度上提高了开发效率.https://zhuanlan.zhi ...

  2. Spring Boot入门教程2-1、使用Spring Boot+MyBatis访问数据库(CURD)注解版

    一.前言 什么是MyBatis?MyBatis是目前Java平台最为流行的ORM框架https://baike.baidu.com/item/MyBatis/2824918 本篇开发环境1.操作系统: ...

  3. Spring Boot入门(二):使用Profile实现多环境配置管理&如何获取配置文件值

    在上一篇博客Spring Boot入门(一):使用IDEA创建Spring Boot项目并使用yaml配置文件中,我们新建了一个最原始的Spring Boot项目,并使用了更为流行的yaml配置文件. ...

  4. Spring boot入门(二):Spring boot集成MySql,Mybatis和PageHelper插件

    上一篇文章,写了如何搭建一个简单的Spring boot项目,本篇是接着上一篇文章写得:Spring boot入门:快速搭建Spring boot项目(一),主要是spring boot集成mybat ...

  5. 一、Spring Boot系列:通过Maven创建第一个项目

    1.打开idea选择创建工程 2.创建maven工程,同时选择jdk1.8 注意:不需要勾选其他选项 3.填写项目名称 4.创建好maven项目后,在pom.xml文件中导入Spring Boot需要 ...

  6. spring cloud 入门系列一:初识spring cloud

    最近看到微服务很火,也是未来的趋势, 所以就去学习下,在dubbo和spring cloud之间我选择了从spring cloud,主要有如下几种原因: dubbo主要专注于微服务中的一个环节--服务 ...

  7. Cocos从入门到精通--《创建第一个项目:HelloWorld》

    上节课我们解说了cocos2-x v3.7版本号的下载安装,也展示了使用CocosStudio编译不同平台运行程序的方法,大家是不是对新版本号的Cocos引擎充满期待?今天我们就创建一个project ...

  8. Spring Boot入门第一天:Hello, Spring Boot!

    原文链接 1. 新建一个Maven Web项目. 2. 配置pom.xml文件. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 ...

  9. spring cloud 入门系列八:使用spring cloud sleuth整合zipkin进行服务链路追踪

    好久没有写博客了,主要是最近有些忙,今天忙里偷闲来一篇. =======我是华丽的分割线========== 微服务架构是一种分布式架构,微服务系统按照业务划分服务单元,一个微服务往往会有很多个服务单 ...

随机推荐

  1. BOM,DOM常见操作和DHML

    BOM (Browser Object Model)浏览器对象模型,控制浏览器的一些行为 window对象 代表一个HTML文档 属性 页面导航的5个属性 self, parent, top, ope ...

  2. ajax如何实现、readyState五中状态的含义

    转载:http://www.cnblogs.com/teroy/p/3917439.html 熟悉web开发的程序员想必对Ajax也不会陌生.现在已经有很多js框架封装了ajax实现,例如JQuery ...

  3. dup和dup2应用实例(dup跟APUE有出入,close+dup=dup2?)

    dup/dup2函数 有时我们希望把标准输入重定向到一个文件,或者把标准输出重定向到一个网络连接. dup()与dup2()能对输入文件描述符进行重定向. 函数原型如下: dup函数创建一个新的文件描 ...

  4. 由于github仓库中提前建立readme文件,导致git push报错error: failed to push some refs to 'git@github.com:

    $ git push -u origin master To git@github.com:xxx/xxx.git ! [rejected] master -> master (fetch fi ...

  5. float之脱离文档流

    所谓的文档流:指的是元素在排版过程中,元素自动从左到右,从上到下的顺序排列. 脱离文档流:也就是将元素从普通的布局排版中拿走,其他盒子在定位的时候,会当做脱离文档流的元素不存在而进行定位 只有绝对定位 ...

  6. 【Quartz】持久化到数据库【五】

      前言 我们做到这里已经对Quartz定时器组件已经是学会了基本的使用了.但是我们有没有想过任务开启之后万一断掉了,当机了我们怎么办,你是否还想继续执行原先的任务.我们普通的创建是把任务放在内存中存 ...

  7. SSM-SpringMVC-11:SpringMVC中ParameterMethodNameResolver参数方法名称解析器

    ------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 或许曾经的我们也见过一种方式http://localhost:8080/项目名/后台servlet?actio ...

  8. SSM-MyBatis-01:IDEA的安装,永久注册和简单的MyBatis用例

    一,IDEA的安装和永久注册 1.安装: 那到安装包,下一步,选路径,上面可以选操作系统64/32位,下面是程序的默认打开方式,可以不必勾选,也可以全选 路径一定不包含中文,重点 2.永久注册: 将此 ...

  9. mysql数据库的安装与配置

    mysql数据库的安装与配置及workbench的简单使用 mysql数据库社区版下载:https://dev.mysql.com/downloads/installer/ 我这里选的是社区安装版(适 ...

  10. Kali Linux安装中文输入法全纪录

    前言: 我使用的是英文版的Kali,默认没有安装中文输入法,也没有安装小企鹅(我后来才知道),折腾了很久,现在终于可以在Kali里输入中文了(这篇文章就是在Kali里面用leafpad写的).安装的过 ...