由于公司最近在做技术转型(从.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,欢迎大家下载,有问题可以多多交流。