springboot项目需要读取非application.yml/properties 的配置文件
目录:
- 1、操作步骤
- 2、总结
- 3、扩展
- 4、第二种方法获取配置文件bean
1、操作步骤
1.新建配置文件:
2.编辑配置文件:
test-server=rd-dev02.jr.rong360.com
3.新建Config类:
@Component
@PropertySource(value = "kirara.properties")
public class KiraraConfig {@Value("${test-server:rd-dev02.jr.rong360.com}")private String testServer;public String getTestServer() {return testServer;}public void setTestServer(String testServer) {this.testServer = testServer;}
}
4.编辑调用类:
@RestController
public class UuapLoginController {@Autowiredprivate UuapLoginService loginService;@Autowiredprivate KiraraConfig kiraraConfig;/*** 登录方法** @param loginBody 登录信息* @return 结果*/@PostMapping("/api/v1/login")public AjaxResult login() throws Exception{AjaxResult ajax = AjaxResult.success();kiraraConfig.getTestServer();return ajax;}
}
2、总结
主要是用Config类去加载配置文件内容,然后注入到类中进行使用。
3、扩展
Spring中加载ApplicationContext.xml的方法分享,如下所示:
spring 中加载xml配置文件的方式 有4种,分别为:
XmlBeanFactory,
ClassPathXmlApplicationContext,
FileSystemXmlApplicationContext,
XmlWebApplicationContext
扩展详情
4、第二种方法获取配置文件bean
1.配置实体类:
/*** 学生实体类* Created by ASUS on 2018/5/4*/@Component("Student")
public class Student {private String name;private int age;public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public Student(String name, int age) {this.name = name;this.age = age;}public Student() {}@Overridepublic String toString() {return "Student{" +"name='" + name + '\'' +", age=" + age +'}';}
}
2.启动类配置:
/*** springboot启动类**/@SpringBootApplication
//读取resources目录下的applicationContext.xml
@ImportResource("classpath:applicationContext.xml")
public class Application
{public static void main( String[] args ){ApplicationContext applicationContext= SpringApplication.run(Application.class,args);Student student= (Student) applicationContext.getBean("student",Student.class);System.out.println("message:"+student.toString());}}
3.application.xml的内容:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-4.0.xsdhttp://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context-4.0.xsd "><bean name="student" class="springboot.entity.Student"><property name="name" value="小黄"/><property name="age" value="19"/></bean></beans>
4.测试结果:
springboot项目需要读取非application.yml/properties 的配置文件相关推荐
- idea 创建springboot项目的资源文件application.yml的图标显示不正常
按Settings图示位置查看下text下有无yml或是yaml,并在下面的YAML里添加这两项.因为spring-boot-starter-parent里说明了:
- SpringBoot 加载不出来application.yml文件
摘要 记录一次SpringBoot加载不出来application.yml文件的问题解决过程 问题 配置了application.yml文件,但是映射到properties bean的时候失败 @Co ...
- java解析yml文件_java读取解析application.yml
java读取解析application.yml 不用依赖spring容器,可单独使用. bug已修改... 第一步.首先要2个jar com.fasterxml.jackson.dataformat ...
- SpringBoot启动如何加载application.yml配置文件
一.前言 在spring时代配置文件的加载都是通过web.xml配置加载的(Servlet3.0之前),可能配置方式有所不同,但是大多数都是通过指定路径的文件名的形式去告诉spring该加载哪个文件: ...
- 解决SpringBoot项目中遇到的数据库连接yml文件配置问题
今天遇到了一个报错 Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasou ...
- springboot log4j2.xml读取application.yml中的属性值
注意:部份代码太长,可以通过文末的图片快速查看对应位置 项目需求 用户想自己配置日志存放的位置,因此我们需要满足提供可以配置的文件,用以满足用户的需求. 因此,我们主要通过 log4j2.xml 来读 ...
- 【SpringBoot零基础案例05】【IEDA 2021.1】若SpringBoot项目两种配置文件同时存在,哪种文件配置起作用?
新建模块,并创建IndexController类 package com.zx.springboot.web;import org.springframework.stereotype.Control ...
- spring cloud 配置文件application.yml和bootstrap.yml 的定位,区别和联系
最近在启用springcloud配置中心server的东西,在整理属性资源的时候,突然发现:用了这么久的springboot,为什么会配置两个属性文件同时存在(application.yml/prop ...
- jenkins整合gitee自动部署SpringBoot项目
文章目录 前提条件 一.服务器安装jenkins 方法一:简单快捷 第一步:将jenkens.war导入到系统 第二步:放在tomcat的webapp下面 第三步:访问http://ip:8080/j ...
最新文章
- 在线视频解决方案供应商
- 自建通用Makefile 分享
- KernelIoControl和OEMIoControl的分析和使用(作者:wogoyixikexie@gliet)
- R语言实现金融数据的时间序列分析及建模
- Java程序员从笨鸟到菜鸟之(十二)java异常处理机制
- 无锡计算机硬件培训,无锡锡山办公软件电脑基础培训随到随学 学会为止
- java打印等腰三角形_Java 后台开发面试题分享三
- MySQL 5.7原生JSON格式支持
- P0INP = 0Xfd;P1DIR |= 0X01;
- HTML表单效果图,html-图片/表格/表单
- Error running ‘Tomcat x.x.xx‘: Address localhost:xxxx is already in use
- 个人的Directx9研究总结 (1)
- 删除操作,提示“无法读取源文件或磁盘”,解决办法!
- Qt文档阅读笔记-QCustom3DLabel使用及Q3DSurface基本信号
- 常见的域名劫持类型及如何修复
- 64位处理器_计算机基础:处理器
- 2023年软考时间流程安排:
- 【机器学习】逻辑回归案例一:保险与年龄之间关系分析
- demo:猜数字小游戏
- 运维工程师主要做什么_网络工程师和网络运维工程师到底有什么不同?
热门文章
- SimHash算法原理与应用(Java版)
- FL Studio20.9.1水果中文版来啦 Win/Mac中文版FL水果萝卜
- [精易软件开发工程师Leo学习笔记]005数组
- 联想z470安装深度linux,联想 z470 成功安装 mac os EI Capitan 10.11.6
- k8s-svc外界访问pod容器服务-4
- 2022/11/4电子体温计方案_单片机
- 无线WiFi通信模组方案,智能家居无线物联网应用,ESP32芯片模组技术
- 个人免签支付云端监听免挂机支付宝收款
- CC1310如何使用内部LDO
- 【凯子哥带你夯实应用层】使用ActionMode实现有删除动画的多选删除功能