(转)手把手的SpringBoot教程,SpringBoot创建web项目(三)

这节课,我们来学习一下SpringBoot的环境配置,在SpringBoot中,所有的配置都写在application.properties中:


 
 

我们启动项目,默认端口是8080,我们现在给他配置一个8088:

server.port=8088
 
 

运行启动类,然后在浏览器地址栏访问上一节中的控制器:

 
 

启动成功了。

然后访问这个Controller

package com.example.demo.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {
    
    @RequestMapping("hello")
    public String hello(){
        return "<font style='font-size:28px;'>Hello Spring Boot</font>";
    }
}

访问:http://localhost:8088/hello

 
 

访问成功啦!

如果你要加上一个项目的名字,做如下配置:

server.context-path=/demo

注意:/demo的 “ / ”不能少!

重启服务,访问的地址则需要改为:
http://localhost:8088/demo/hello

 
 

可见,一样能够成功访问!

接下来,我们再来介绍一种yml配置方式,这里编写一个yml文件,文件名还是application

 
 
server:
    port: 8088
    context-path: demo

这样写的好处就是,有一个层级关系,不需要每一行都写全了。需要注意的是,port:
8088之间必须要有一个空格,不能挤在一起,否则是识别不了的!!!

启动项目,报错:

java.lang.IllegalStateException: Failed to load property source from location 'classpath:/application.yml'
    at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.loadIntoGroup(ConfigFileApplicationListener.java:476)
    at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.load(ConfigFileApplicationListener.java:465)
    at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.load(ConfigFileApplicationListener.java:386)
    at org.springframework.boot.context.config.ConfigFileApplicationListener.addPropertySources(ConfigFileApplicationListener.java:225)
    at org.springframework.boot.context.config.ConfigFileApplicationListener.postProcessEnvironment(ConfigFileApplicationListener.java:195)
    at org.springframework.boot.context.config.ConfigFileApplicationListener.onApplicationEnvironmentPreparedEvent(ConfigFileApplicationListener.java:182)
    at org.springframework.boot.context.config.ConfigFileApplicationListener.onApplicationEvent(ConfigFileApplicationListener.java:168)
    at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172)
    at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165)
    at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139)
    at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:122)
    at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:74)
    at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:54)
    at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:325)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:296)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1118)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1107)
    at com.example.demo.DemoApplication.main(DemoApplication.java:10)

注意哦,这里有个坑,我们采用yml文件配置项目的时候,二级配置这里,不能直接一个tab键,那样会有4个空格,而实际上,我们这里只能有两个空格。

一个空格都不能多!!

OK,修改yml文件(老老实实打两个空格吧,亲!):

server:
  port: 8088
  context-path: demo

图解:

 
 

重新启动项目,访问:
http://localhost:8089/demo/hello

 
 

成功!

本篇教程讲解了在SpringBoot项目中进行配置的两种方式,我个人推荐大家使用yml文件来配置SpringBoot项目。

您的支持是我写作的最大动力:

 
 

个人网站:http://java520.top/



作者:剽悍一小兔
链接:https://www.jianshu.com/p/20915a431c07
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
原文地址:https://www.cnblogs.com/icemargin/p/12405163.html