使用SpringBoot开发过程中,难免需要配置相关数据项,然后在Java代码中@Autowired注入并使用。

我们应该如何读取properties文件中的配置项呢?

基于SpringBoot项目,配置项一般都存放在application.properties文件中。有2种常用的方法:

1.使用@Value注解标注在Field上面
2.使用@ConfigurationProperties注解标注在类或者方法上

为了讲解方便,附上application.properties文件配置好的数据项

如下图所示:

我们可以看到1~3行的配置项,有一个共同的特点:有相同的前缀spring.datasource,既然具备这个特点,那么我们就可以定义一个class,里面有3个fields:userName、password和url。然后在类上使用@ConfigurationProperties标注并指定前缀spring.datasource即可。最后,且非常重要的是,SpringBoot的主入口类 XxxApplication类需要使用@EnableAutoConfiguration进行标注(在SpringBoot 2.x可省略)!

下面附上示例:

@ConfigurationProperties(prefix = "spring.datasource")
public class DataSourceProperties { private String userName; private String password; private String url; }

那么,类似第5行的 web.upload.path配置项,又应该如何读取呢?

其实,我们可以使用@Value完成属性值注入field。参见以下代码块:

@Value("${web.upload.path}")
private String webUploadPath;

完...

SpringBoot读取properties文件配置项的更多相关文章

  1. 解决IDEA springBoot读取*.properties文件中文内容乱码的问题

    1. 配置 properties 文件 2. 读取 sex 属性输出到页面, 中文乱码 3. file --> settings 4. Editor --> File Encodings ...

  2. SpringBoot @Value读取properties文件的属性

    SpringBoot在application.properties文件中,可以自定义属性. 在properties文件中如下示: #自定义属性 mail.fromMail.addr=lgr@163.c ...

  3. springBoot使用@Value标签读取*.properties文件的中文乱码问题

    上次我碰到获取properties文件中的中文出现乱码问题. 查了下资料,原来properties默认的字符编码格式为asci码,所以我们要对字符编码进行转换成UTF-8格式 原先代码:@Proper ...

  4. SpringBoot11 读取properties文件、发送邮件

    1 读取properties文件 1.1 ResourceBundle 帮助我们事先国际化 1.1.1 前提 properties文件的命名方式必须体现除语言和国别 例如:test_zh_CN.pro ...

  5. 五种方式让你在java中读取properties文件内容不再是难题

    一.背景 最近,在项目开发的过程中,遇到需要在properties文件中定义一些自定义的变量,以供java程序动态的读取,修改变量,不再需要修改代码的问题.就借此机会把Spring+SpringMVC ...

  6. java分享第十六天( java读取properties文件的几种方法&java配置文件持久化:static块的作用)

     java读取properties文件的几种方法一.项目中经常会需要读取配置文件(properties文件),因此读取方法总结如下: 1.通过java.util.Properties读取Propert ...

  7. 用eclipse做项目中常遇到的问题-如何创建并读取properties文件

    在用eclipse做项目开发的时候我们常常会将一些重要的内容写在配置文件里面, 特别是连接数据库的url,username,password等信息,我们常常会新建一个properties文件将所有信息 ...

  8. jsp读取properties文件

    jsp读取properties文件 jsp中读取properties文件,并把值设到js变量中: mpi.properties文件内容: MerchantID=00000820 CustomerEMa ...

  9. java读取.properties文件

    在web开发过程中,有些配置要保存到properties文件里,本章将给出一个工具类,用来方便读取properties文件. 案例: 1:config.properties文件 name=\u843D ...

  10. Java 读取Properties文件时应注意的路径问题

    1. 使用Class的getResourceAsStream()方法读取Properties文件(资源文件)的路径问题:  InputStream in = this.getClass().getRe ...

随机推荐

  1. 神经网络初始化:xavier,kaiming、ortho正交初始化在CNN网络中的使用

    xavier.ortho是神经网络中常用的权重初始化方法,在全连接中这两种权重初始化的方法比较好理解,但是在CNN的卷积网络中的具体实现却不好理解了. 在CNN网络中xavier的初始化可以参看: [ ...

  2. 解决CGLib动态代理测试不通过-Unable to load cache item

    1.背景 在学习aop底层时遇到的问题,做个小结 2.现象 动态代理代码如下: package com.ldp.proxy; import net.sf.cglib.proxy.Enhancer; i ...

  3. SpringBoot项目中HTTP请求体只能读一次?试试这方案

    问题描述 在基于Spring开发Java项目时,可能需要重复读取HTTP请求体中的数据,例如使用拦截器打印入参信息等,但当我们重复调用getInputStream()或者getReader()时,通常 ...

  4. 电脑打不开CHM格式文件解决办法

    如图所示 比如说jdk1.8的api 双击打开后,这个样子 就ok了

  5. 使用jquery的tmpl构建复杂表格

    Tmpl提供了几种tag:${}:等同于{{=}},是输出变量,通过了html编码的.{{html}}:输出变量html,但是没有html编码,适合输出html代码.{{if }} {{else}}: ...

  6. 【图文教程】云服务器上,Linux安装VSFTPD组件及遇到的问题

    服务器做迁移,从AXX云迁移到Txx云上,迁移的话,需要把图片服务器也迁移过去.之前使用的是VSFTPD这次也还用这个吧.这里就记录下FTP服务器安装及遇到的问题. 1:安装VSFTP组件 使用yum ...

  7. Java并发之原子变量及CAS算法-下篇

    Java并发之原子变量及CAS算法-下篇 概述 本文主要讲在Java并发编程的时候,如果保证变量的原子性,在JDK提供的类中是怎么保证变量原子性的呢?.对应Java中的包是:java.util.con ...

  8. electron修改vue项目打包后的exe图标

    vue用electron打包点击这里 安装electron-icon-builder 添加图标生成器:npm i electron-icon-builder 生成图标 1.在package.json的 ...

  9. pyspark 数据类型及转换

    spark 有哪些数据类型 https://spark.apache.org/docs/latest/sql-reference.html Spark 数据类型 Data Types Spark SQ ...

  10. elementUI实现月、季度、年 时间选择框

    elementUI实现月.季度.年 时间选择框 一.通过 el-date-picker 组件来实现月.年的选择 代码如下: <el-date-picker v-if="dateType ...