SpringBoot(二)_项目属性配置

修改端口

在main/resources/application.properties修改端口

server.port=8088

此时启动访问localhost:8088/hello 就会看到

Hello Spring Boot!

使用yml文件替换properties 文件

(1)在main/resources 文件下新建一个application.yml 文件

(2)在yml文件中修改端口

server:
  port: 8099

(3) 删除掉application.properties文件,只保留yml文件

(4) 运行程序,此时访问8099端口即可

获取配置文件的值

(1) 在application.yml 文件中,编写上其他内容

server:
  port: 8099
name: maomao
age: 18

(2) 利用@Value 注解

@RestController
public class HelloController {

    @Value("${name}")
    private String name;

    @Value("${age}")
    private int age;
    @RequestMapping(value = {"/hello"},method = RequestMethod.GET)
    public String say(){
        return name+age;
    }
}

(3)访问8099端口,就获取到值

maomao 18

使用自定义配置类

如果属性很多,我们每个属性都需要写,显得有些费事,我们可以利用自定义配置类进行获取

(1) 修改yml 文件

server:
  port: 8099
girl:
  name: maomao
  age: 18

(2) 创建properties/GirlProperties.java

@Component
@ConfigurationProperties(prefix = "girl")
public class GirlProperties {

    private  String name;

    private int age;

    //get和set方法省略
}

(3) 我在使用@ConfigurationProperties 这个注解时,提示找不到class,需在pom文件中引入

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-configuration-processor</artifactId>
            <optional>true</optional>
        </dependency>

(4) 修改controller文件

@RestController
public class HelloController {

    @Resource
    private  GirlProperties girlProperties;
    @RequestMapping(value = {"/hello"},method = RequestMethod.GET)
    public String say(){
        return girlProperties.getName();
    }
}

(5)验证结果

maomao

开发环境和生成环境配置不同的问题

这个问题经常见,比如我们开发环境 name 是maomao ,生成环境是 毛毛,我们大部分都是修改配置文件,但是这样还是很麻烦。

(1) 复制2个yml文件,分别是application-dev.yml (开发环境) application-prod.yml(生产环境)

(2) 修改application-prod.yml(生产环境)文件

server:
  port: 8088
girl:
  name: 毛毛
  age: 18

(3) application-dev.yml (开发环境)文件内容

server:
  port: 8099
girl:
  name: maomao
  age: 18

(4)application.yml文件内容,这个就代表使用dev的配置文件

spring:
  profiles:
    active: dev

(5)上篇文章讲过java -jar 的启动方式

  • 先执行 mvn install
  • 在执行启动 java -jar girl-0.0.1-SNAPSHOT.jar --spring.profiles.active=prod

(6)此时就是访问的prod 的配置8088,(注意我们配置的application.yml 中用的是dev 这个配置文件,但是我们启动的时候加上后面的参数就自动切换到 prod 文件上)

总结

在使用yml进行配置更加简单方便,使用java -jar 启动 加上参数,就可以避免我们来回修改配置文件,有漏掉的情况。

源码下载:github

学习不是要么0分,要么100分的。80分是收获;60分是收获;20分也是收获。有收获最重要。但是因为着眼于自己的不完美,最终放弃了,那就是彻底的0分了。
优秀的个人博客,低调大师

微信关注我们

原文链接:https://yq.aliyun.com/articles/640683

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
优质分享Android(本站安卓app)

优质分享Android(本站安卓app)

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Apache Tomcat7、8、9(Java Web服务器)

Apache Tomcat7、8、9(Java Web服务器)

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

Eclipse(集成开发环境)

Eclipse(集成开发环境)

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。

Sublime Text 一个代码编辑器

Sublime Text 一个代码编辑器

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。