SpringBoot注解配置文件映射属性和实体类
配置文件加载
方式一
- Controller上面配置@PropertySource({"classpath:pay.properties"})
- 添加属性@Value("wxpay.appid") private String payAppid;
pay.properties
# 微信支付的appid
wxpay.appid=w23232323
# 支付密钥
wxpay.sercret=abd
# 微信支付商户号
wx.mechid=1234
TestController.java
package net.cyb.demo.controller; import net.cyb.demo.utils.JsonData;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.PropertySource;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import java.util.HashMap;
import java.util.Map; @RestController
@RequestMapping("/api/v1/test")
@PropertySource({"classpath:pay.properties"})
public class TestController {
@Value("wxpay.appid")
private String payAppid;
@Value("wxpay.sercret")
private String paySecret;
@GetMapping("get_config")
public JsonData testConfig(){
Map<String,String> map=new HashMap<>();
map.put("appid",payAppid);
map.put("secret",paySecret);
return JsonData.buildSuccess(map);
}
}
方式二
- 添加@Component注解
- 使用PropertySource注解指定配置文件位置
- 使用@ConfigurationProperties注解,设置相关属性
- 必须通过注入IOC对象Resource进来,才能在类中使用获取的配置文件值。@Autowired private WXConfig wxConfig;
pay.properties
# 微信支付的appid
wxpay.appid=w23232323
# 支付密钥
wxpay.sercret=abd
# 微信支付商户号
wx.mechid=1234
WXConfig.java
package net.cyb.demo.config; import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
import java.io.Serializable; @Configuration
@PropertySource({"classpath:pay.properties"})
public class WXConfig implements Serializable {
@Value("wxpay.appid")
private String payAppid;
@Value("wxpay.sercret")
private String paySecret;
@Value("wx.mechid")
private String payMechId; public String getPayAppid() {
return payAppid;
} public void setPayAppid(String payAppid) {
this.payAppid = payAppid;
} public String getPaySecret() {
return paySecret;
} public void setPaySecret(String paySecret) {
this.paySecret = paySecret;
} public String getPayMechId() {
return payMechId;
} public void setPayMechId(String payMechId) {
this.payMechId = payMechId;
}
}
TestController.java
package net.cyb.demo.controller; import net.cyb.demo.config.WXConfig;
import net.cyb.demo.utils.JsonData;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.PropertySource;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import java.util.HashMap;
import java.util.Map; @RestController
@RequestMapping("/api/v1/test")
public class TestController {
@Autowired
private WXConfig wxConfig;
@GetMapping("get_config")
public JsonData testConfig(){
Map<String,String> map=new HashMap<>();
map.put("appid",wxConfig.getPayAppid());
map.put("secret",wxConfig.getPaySecret());
map.put("mechid",wxConfig.getPayMechId());
return JsonData.buildSuccess(map);
}
}
SpringBoot注解配置文件映射属性和实体类的更多相关文章
- SpringBoot JPA查询映射到自定义实体类
和 SegmentFault上的文章(https://segmentfault.com/a/1190000021869465)一样, 都是俺账号 场景 举一个简单的栗子: 比如有一个User实体类 @ ...
- SpringBoot注解把配置文件自动映射到属性和实体类实战
SpringBoot注解把配置文件自动映射到属性和实体类实战 简介:讲解使用@value注解配置文件自动映射到属性和实体类 1.配置文件加载 方式一 1.Controller上面配置 @Propert ...
- 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_2-7.接口配置文件自动映射到属性和实体类配置
笔记 7.接口配置文件自动映射到属性和实体类配置 简介:使用@value注解配置文件自动映射到属性和实体类 1.添加 @Component或者Configuration 注解: ...
- 生成 hibernate 映射文件和实体类
创建web工程,使用Hibernate的时候,在工程里一个一个创建实体类太麻烦,浪费时间,现在教大家如何用MyEclipse自动生成Hibernate映射文件及实体类 方法/步骤 创建数据库,创建 ...
- SpringBoot配置文件自动映射到属性和实体类(8)
一.配置文件加载 1.Controller中配置并指向文件 @Controller @PropertySource(value = { "application.properties&quo ...
- SpringBoot------注解把配置文件自动映射到属性和实体类
1.映射到属性 package top.ytheng.demo.controller; import org.springframework.beans.factory.annotation.Valu ...
- 通过JPA注解映射视图的实体类 jpa 视图 无主键 @Query注解的用法(Spring Data JPA) jpa 使用sql语句
参考: https://blog.csdn.net/qq465235530/article/details/68064074 https://www.cnblogs.com/zj0208/p/6008 ...
- 用MyEclipse自动生成hibernate映射文件和实体类
创建数据库,创建相应的表 点击图标,选择MyEclipse Datebase Explorer 右击空白区域,选择new菜单,根据提示创建数据库连接,创建好后会显示你所创建的连接名,如图mysqldb ...
- mybatis中映射文件和实体类的关联性
mybatis的映射文件写法多种多样,不同的写法和用法,在实际开发过程中所消耗的开发时间.维护时间有很大差别,今天我就把我认为比较简单的一种映射文件写法记录下来,供大家修改建议,争取找到一个最优写法~ ...
- mybatis 接口中定义方法、映射文件、实体类之间的关系?
一.定义实体类 ,注意需求 是一对多还是多对一. 这里用员工和部门 多对一的关系举例. package com.zs.entity; /* * /* * 多对一? * 多个员工 对应一个部门 一个 ...
随机推荐
- three.js教程1补充-gui.js库使用
gui.js是一个前端js库,对HTML.CSS和JavaScript进行了封装,学习开发的时候,借助dat.gui.js可以快速创建可手动控制三维场景的UI交互界面,打开API文档中案例体验一下就能 ...
- kubernetes之包管理器Helm
安装helm 安装helm客户端 [machangwei@mcwk8s-master ~]$ curl https://raw.githubusercontent.com/kubernetes/hel ...
- cpu的各种信息查询
Linux查看物理CPU个数.核数.逻辑CPU个数 # 总核数 = 物理CPU个数 X 每颗物理CPU的核数 # 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 # 查看物 ...
- 开发中你不得不知的一个Git小技巧
一. 背景 在工作中大家应会碰到需要频繁在两个分支中切换工作的情况,我们通常做法是利用git stash命令暂存当前工作区中的变更,然后git checkout到目标分支中工作,工作完成后回到刚刚分支 ...
- 为什么我们要用Spring Boot
最近我面试了不少人,其中不乏说对 Spring Boot 非常熟悉的,然后当我问到一些 Spring Boot 核心功能和原理的时候,没人能说得上来,或者说不到点上,可以说一个问题就问趴下了! 这是我 ...
- k8s 1.24 service account 版本以后怎么获取永不过期token?
问题产生背景: 一个服务操作多个k8s集群, 这个时候就会出现授权问题.k8s 1.24版本之前sa账号产生的token在secret中是永久不过期的.在1.24版本以后secret将不再保留toke ...
- C++笔记(2)拷贝构造函数
拷贝构造函数是一种特殊的构造函数,它在创建对象时,是使用同一类中之前创建的对象来初始化新创建的对象. 如果在类中没有定义拷贝构造函数,编译器会自行定义一个.如果类带有指针变量,并有动态内存分配,则它必 ...
- SMOGN算法Python实现:解决回归分析中的数据不平衡
本文介绍基于Python语言中的smogn包,读取.csv格式的Excel表格文件,实现SMOGN算法,对机器学习.深度学习回归中,训练数据集不平衡的情况加以解决的具体方法. 在不平衡回归问题 ...
- 鸿蒙HarmonyOS实战-ArkTS语言基础类库(概述)
一.概述 1.什么是语言基础类库 语言基础类库,也称为标准库或核心库,是编程语言提供的一组内置的基础功能和常用工具的集合.它通常包含了各种数据结构.算法.输入输出处理.字符串处理.日期时间处理.文件操 ...
- Qt工具栏的使用
参考视频:黑马科技:https://www.bilibili.com/video/BV1XW411x7NU?p=19 对话框通常会是一个顶层窗口,出现在程序最上层,用于实现短期任务或者简洁的用户交互. ...