全局配置文件操作

我们已经去构建了SpringBoot项目,在这个项目当中,与全局配置文件的一个讲解,虽然在之前,讲解了SpringBoot的全局配置文件,那么咱们还有一些内容呢,没有讲到,我们再做一个补充,我们看全局配置文件中的第一个内容,修改端口号,修改内嵌容器的端口号,回到我们的项目当中,其实我们知道,在我们的SpringBoot当中,对于内嵌的Tomcat,默认的监听端口号是8080,在这里我们可以把我们的项目启动一下,看一下控制台输出的监听的端口号端口,端口号是多少,我们项目启动完毕以后呢,他默认的监听的端口号是8080,比如我现在想把端口号改成8888,该怎么去做呢,回到我们的全局配置文件当中,在这里我们只需要添加一个键值对就可以了server.port=8888那这个我们要注意的就是,key必须要交server.port,因为springboot在解析的时候,他要去解析这个配置文件,在全局配置文件当中,他发现有server.port了,他知道你要修改服务的端口号,所以这是不能随便取的一个key,就叫server.port,下面我们再启动一下我们的项目,我们看一下控制台输出,现在是不是变成了8888了Tomcat started on port(s): 8888 (http)那么也就是说我们修改端口也是成功的,这个也就是SpringBoot当中,修改端口号的一个方式,接下来我们再看一下,我们可以在SpringBoot的全局配置文件当中,除了修改端口号以外,还可以做什么呢,比如完成自定义属性的=配置,那么其实自定义属性配置,已经讲过了,这个叫法大家听着挺陌生的,这个名这么叫也没有问题,什么意思呢,比如我现在要在配置文件里,key跟value,这个value呢,他将作为一个配置项,未来会注入到我的代码当中,如果我想有这样的一个设计的话,有这样的一个需求的话,我该怎么去实现呢,很简单,比如我这里有一个msg,然后后面给一个value,就叫Hello World,现在我就要把msg所对应的value通过一定的方式,注入到我的代码当中,我们来看一下这怎么做,首先我添加一个key和value,然后我们去创建一个Controller,然后这个名字叫HelloWorldController,然后在这个Controller当中,我们先去用一个@RestController,这个注解大家应该知道是什么意思了,也就是以JSON格式来返回了,然后再加一个@RequestMapping,将一个URL绑定到一个方法上,我就叫hello,然后定义一个方法返回String,叫showMsg,然后这个方法写完了,在我的这个Controller当中呢,我有一个成员变量,String类型的,就叫msg,在这里我return这个msg,将他的信息返回,然后我要把key的valule注入到这里,用一个@Value的注解,然后写一个类似EL表达式的语法,把我们的key填进来,这样就可以了@RestController
public class HelloWorldController {@Value("${msg}")private String msg;@RequestMapping("/hello")public String showMsg(){return this.msg;}
}我们启动一下,看能不能得到我们想要的结果,我们观察控制台,监听的端口是8888,打开浏览器我们来访问一下http://localhost:8888/hello我们可以看到,信息是可以拿到的,这种方式我们也可以称之为自定义属性配置,这个是配置文件里的值msg=Hello World这是在配置文件当中,自定义属性的方式,去获取里面的信息,接下来我们再来看,配置变量引用,在配置文件当中呢,去完成一个配置变量应用,我们来看一下

4.0.0com.learnspringboot-hello0.0.1-SNAPSHOTspringboot-helloorg.springframework.bootspring-boot-starter-parent1.5.12.RELEASEUTF-8UTF-81.8org.springframework.bootspring-boot-starter-weborg.springframework.bootspring-boot-starter-testtestorg.springframework.bootspring-boot-maven-plugin
package com.learn.springboothello.controller;import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
public class HelloWorldController {@Value("${msg}")private String msg;@RequestMapping("/hello")public String showMsg(){return this.msg;}
}
package com.learn.springboothello;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
public class SpringbootHelloApplication {public static void main(String[] args) {SpringApplication.run(SpringbootHelloApplication.class, args);}}

 


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部