Spring Boot入门(一):使用IDEA创建Spring Boot项目并使用yaml配置文件
由于公司最近在做技术转型(从.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.参考链接
Spring Boot入门(一):使用IDEA创建Spring Boot项目并使用yaml配置文件的更多相关文章
- Spring Boot入门教程1、使用Spring Boot构建第一个Web应用程序
一.前言 什么是Spring Boot?Spring Boot就是一个让你使用Spring构建应用时减少配置的一个框架.约定优于配置,一定程度上提高了开发效率.https://zhuanlan.zhi ...
- Spring Boot入门教程2-1、使用Spring Boot+MyBatis访问数据库(CURD)注解版
一.前言 什么是MyBatis?MyBatis是目前Java平台最为流行的ORM框架https://baike.baidu.com/item/MyBatis/2824918 本篇开发环境1.操作系统: ...
- Spring Boot入门(二):使用Profile实现多环境配置管理&如何获取配置文件值
在上一篇博客Spring Boot入门(一):使用IDEA创建Spring Boot项目并使用yaml配置文件中,我们新建了一个最原始的Spring Boot项目,并使用了更为流行的yaml配置文件. ...
- Spring boot入门(二):Spring boot集成MySql,Mybatis和PageHelper插件
上一篇文章,写了如何搭建一个简单的Spring boot项目,本篇是接着上一篇文章写得:Spring boot入门:快速搭建Spring boot项目(一),主要是spring boot集成mybat ...
- 一、Spring Boot系列:通过Maven创建第一个项目
1.打开idea选择创建工程 2.创建maven工程,同时选择jdk1.8 注意:不需要勾选其他选项 3.填写项目名称 4.创建好maven项目后,在pom.xml文件中导入Spring Boot需要 ...
- spring cloud 入门系列一:初识spring cloud
最近看到微服务很火,也是未来的趋势, 所以就去学习下,在dubbo和spring cloud之间我选择了从spring cloud,主要有如下几种原因: dubbo主要专注于微服务中的一个环节--服务 ...
- Cocos从入门到精通--《创建第一个项目:HelloWorld》
上节课我们解说了cocos2-x v3.7版本号的下载安装,也展示了使用CocosStudio编译不同平台运行程序的方法,大家是不是对新版本号的Cocos引擎充满期待?今天我们就创建一个project ...
- 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 ...
- spring cloud 入门系列八:使用spring cloud sleuth整合zipkin进行服务链路追踪
好久没有写博客了,主要是最近有些忙,今天忙里偷闲来一篇. =======我是华丽的分割线========== 微服务架构是一种分布式架构,微服务系统按照业务划分服务单元,一个微服务往往会有很多个服务单 ...
随机推荐
- javascript 用函数语句和表达式定义函数的区别详解
通常我们会看到以下两种定义函数的方式: // 函数语句 function fn(str) { console.log(str); }; // 表达式定义 var fnx=function(str) { ...
- 利用css实现hover动态效果
.font em:hover { font-size: 2em } .font strong:hover { font-weight: normal } .font span:hover { colo ...
- 使用libpcap获取http报文
在上一篇博客中简单对libpcap库基本函数及基本工作流程做了些简单说明, 今天我们先了解一下pcap_loop()及pcap_dispatch()函数的功能及作用: (1)pcap_loop()循环 ...
- 解决WordPress用户名密码都正确但点击登陆就清空密码的问题
作者:荒原之梦 问题产生的环境与问题描述: 今天我在浏览器的书签里将我保存的用于登陆WordPress的书签名字改了一下,之后再登陆WordPress就出现提示说Cookies被阻止,要启用Cooki ...
- WebSocket和Socket
WebSocket和Socket tags:WebSocket和Socket 引言:好多朋友想知道WebSocket和Socket的联系和区别,下面应该就是你们想要的 先来一张之前收集的图,我看到这张 ...
- 常用JS对象的方法总结
String 方法 描述 charAt() 返回在指定位置的字符. charCodeAt() 返回在指定的位置的字符的 Unicode 编码. concat() 连接字符串. indexOf() 检索 ...
- 27.app后端搭建聊天服务器的经历
现在,聊天功能已经成了社交app的标配了.但是,众多web开发出生的程序员对聊天相关的服务的不了解,带来了很多开发上的困扰.在这篇文章中,根据下面3个方面,谈谈聊天服务. 1. 聊天服务的技 ...
- 【bzoj 1414】对称的正方形 单调队列+manacher
Description Orez很喜欢搜集一些神秘的数据,并经常把它们排成一个矩阵进行研究.最近,Orez又得到了一些数据,并已经把它们排成了一个n行m列的矩阵.通过观察,Orez发现这些数据蕴涵了一 ...
- [SCOI2005]栅栏 二分+dfs
这个题真的是太nb了,各种骚 二分答案,肯定要减最小的mid个,从大往小搜每一个木板,从大往小枚举所用的木材 当当前木材比最短的木板还短,就扔到垃圾堆里,并记录waste,当 waste+sum> ...
- BZOJ_5015_[Snoi2017]礼物_矩阵乘法
BZOJ_5015_[Snoi2017]礼物_矩阵乘法 Description 热情好客的请森林中的朋友们吃饭,他的朋友被编号为 1-N,每个到来的朋友都会带给他一些礼物:.其中,第 一个朋友会带给他 ...