由于公司最近在做技术转型(从.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. Java中浮点数的精度问题 【转】

    当您在计算Money的时候,请看好了!!!要不损失了别后悔!!! 现象1: public static void main(String[] args) { System.out.println(0. ...

  2. vue.js常见的报错信息及其解决方法的记录

    1.Vue packages version mismatch 翻译:vue包版本匹配错误 报错样例: 报错原因:通常出现于一些依赖库的更新或者安装新的依赖库之后(可以认为npm update已经成为 ...

  3. Go笔记之二:一个完整的播放器示例

    Go笔记之二:一个完整的播放器示例 该示例从命令行运行一个播放器示例,可进行添加.删除.浏览和模拟播放,其内容是对 Go 语言接口使用的良好展示 源码及可执行文件 参考书籍<Go语言编程> ...

  4. vm12 和14密钥

    vm12:5A02H-AU243-TZJ49-GTC7K-3C61N vm14:FF31K-AHZD1-H8ETZ-8WWEZ-WUUVA

  5. javascript 正则表达式补充

    定义 JavaScript种正则表达式有两种定义方式,定义一个匹配类似 <%XXX%> 的字符串 1. 构造函数 var reg=new RegExp('<%[^%>]+%&g ...

  6. mongoDB身份验证

    超级管理员 为了更安全的访问mongodb,需要访问者提供用户名和密码,于是需要在mongodb中创建用户 采用了角色-用户-数据库的安全管理方式 常用系统角色如下:root:只在admin数据库中可 ...

  7. Centos7 编译安装Nginx 教程

    相信经过上篇博文的学习,聪明的你已经学会了如何在Centos7 上通过yum 方式安装Nginx ,但是有时候有些场景或者特俗情况下,我们往往需要通过编译源码方式安装,以便于更灵活地定制我们的Ngin ...

  8. Reactor和Proactor模式

    在高性能的I/O设计中,有两个比较著名的模式Reactor和Proactor模式,其中Reactor模式用于同步I/O,而Proactor运用于异步I/O操作.同步和异步 同步和异步是针对应用程序和内 ...

  9. NSQ源码剖析之nsqd

    NSQ简介 NSQ 是实时的分布式消息处理平台,其设计的目的是用来大规模地处理每天数以十亿计级别的消息.NSQ 具有分布式和去中心化拓扑结构,该结构具有无单点故障.故障容错.高可用性以及能够保证消息的 ...

  10. CountDownLatch简介

    CountDownLatch是并发包中提供的一个可用于控制多个线程同时开始某动作的类,可以看做是一个计数器,计数器操作是院子操作,同时只能有一个线程去操作这个计数器.可以向CountDownLatch ...