配置文件加载

方式一

  • Controller上面配置@PropertySource({"classpath:pay.properties"})
  • 添加属性@Value("wxpay.appid") private String payAppid;

pay.properties

  1. # 微信支付的appid
  2. wxpay.appid=w23232323
  3. # 支付密钥
  4. wxpay.sercret=abd
  5. # 微信支付商户号
  6. wx.mechid=1234

TestController.java

  1. package net.cyb.demo.controller;
  2.  
  3. import net.cyb.demo.utils.JsonData;
  4. import org.springframework.beans.factory.annotation.Value;
  5. import org.springframework.context.annotation.PropertySource;
  6. import org.springframework.web.bind.annotation.GetMapping;
  7. import org.springframework.web.bind.annotation.RequestMapping;
  8. import org.springframework.web.bind.annotation.RestController;
  9.  
  10. import java.util.HashMap;
  11. import java.util.Map;
  12.  
  13. @RestController
  14. @RequestMapping("/api/v1/test")
  15. @PropertySource({"classpath:pay.properties"})
  16. public class TestController {
  17. @Value("wxpay.appid")
  18. private String payAppid;
  19. @Value("wxpay.sercret")
  20. private String paySecret;
  21. @GetMapping("get_config")
  22. public JsonData testConfig(){
  23. Map<String,String> map=new HashMap<>();
  24. map.put("appid",payAppid);
  25. map.put("secret",paySecret);
  26. return JsonData.buildSuccess(map);
  27. }
  28. }

方式二

  • 添加@Component注解
  • 使用PropertySource注解指定配置文件位置
  • 使用@ConfigurationProperties注解,设置相关属性
  • 必须通过注入IOC对象Resource进来,才能在类中使用获取的配置文件值。@Autowired private WXConfig wxConfig;

pay.properties

  1. # 微信支付的appid
  2. wxpay.appid=w23232323
  3. # 支付密钥
  4. wxpay.sercret=abd
  5. # 微信支付商户号
  6. wx.mechid=1234

WXConfig.java

  1. package net.cyb.demo.config;
  2.  
  3. import org.springframework.beans.factory.annotation.Value;
  4. import org.springframework.context.annotation.Configuration;
  5. import org.springframework.context.annotation.PropertySource;
  6. import java.io.Serializable;
  7.  
  8. @Configuration
  9. @PropertySource({"classpath:pay.properties"})
  10. public class WXConfig implements Serializable {
  11. @Value("wxpay.appid")
  12. private String payAppid;
  13. @Value("wxpay.sercret")
  14. private String paySecret;
  15. @Value("wx.mechid")
  16. private String payMechId;
  17.  
  18. public String getPayAppid() {
  19. return payAppid;
  20. }
  21.  
  22. public void setPayAppid(String payAppid) {
  23. this.payAppid = payAppid;
  24. }
  25.  
  26. public String getPaySecret() {
  27. return paySecret;
  28. }
  29.  
  30. public void setPaySecret(String paySecret) {
  31. this.paySecret = paySecret;
  32. }
  33.  
  34. public String getPayMechId() {
  35. return payMechId;
  36. }
  37.  
  38. public void setPayMechId(String payMechId) {
  39. this.payMechId = payMechId;
  40. }
  41. }

TestController.java

  1. package net.cyb.demo.controller;
  2.  
  3. import net.cyb.demo.config.WXConfig;
  4. import net.cyb.demo.utils.JsonData;
  5. import org.springframework.beans.factory.annotation.Autowired;
  6. import org.springframework.beans.factory.annotation.Value;
  7. import org.springframework.context.annotation.PropertySource;
  8. import org.springframework.web.bind.annotation.GetMapping;
  9. import org.springframework.web.bind.annotation.RequestMapping;
  10. import org.springframework.web.bind.annotation.RestController;
  11.  
  12. import java.util.HashMap;
  13. import java.util.Map;
  14.  
  15. @RestController
  16. @RequestMapping("/api/v1/test")
  17. public class TestController {
  18. @Autowired
  19. private WXConfig wxConfig;
  20. @GetMapping("get_config")
  21. public JsonData testConfig(){
  22. Map<String,String> map=new HashMap<>();
  23. map.put("appid",wxConfig.getPayAppid());
  24. map.put("secret",wxConfig.getPaySecret());
  25. map.put("mechid",wxConfig.getPayMechId());
  26. return JsonData.buildSuccess(map);
  27. }
  28. }

SpringBoot注解配置文件映射属性和实体类的更多相关文章

  1. SpringBoot JPA查询映射到自定义实体类

    和 SegmentFault上的文章(https://segmentfault.com/a/1190000021869465)一样, 都是俺账号 场景 举一个简单的栗子: 比如有一个User实体类 @ ...

  2. SpringBoot注解把配置文件自动映射到属性和实体类实战

    SpringBoot注解把配置文件自动映射到属性和实体类实战 简介:讲解使用@value注解配置文件自动映射到属性和实体类 1.配置文件加载 方式一 1.Controller上面配置 @Propert ...

  3. 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_2-7.接口配置文件自动映射到属性和实体类配置

    笔记 7.接口配置文件自动映射到属性和实体类配置     简介:使用@value注解配置文件自动映射到属性和实体类 1.添加 @Component或者Configuration 注解:        ...

  4. 生成 hibernate 映射文件和实体类

    创建web工程,使用Hibernate的时候,在工程里一个一个创建实体类太麻烦,浪费时间,现在教大家如何用MyEclipse自动生成Hibernate映射文件及实体类 方法/步骤   创建数据库,创建 ...

  5. SpringBoot配置文件自动映射到属性和实体类(8)

    一.配置文件加载 1.Controller中配置并指向文件 @Controller @PropertySource(value = { "application.properties&quo ...

  6. SpringBoot------注解把配置文件自动映射到属性和实体类

    1.映射到属性 package top.ytheng.demo.controller; import org.springframework.beans.factory.annotation.Valu ...

  7. 通过JPA注解映射视图的实体类 jpa 视图 无主键 @Query注解的用法(Spring Data JPA) jpa 使用sql语句

    参考: https://blog.csdn.net/qq465235530/article/details/68064074 https://www.cnblogs.com/zj0208/p/6008 ...

  8. 用MyEclipse自动生成hibernate映射文件和实体类

    创建数据库,创建相应的表 点击图标,选择MyEclipse Datebase Explorer 右击空白区域,选择new菜单,根据提示创建数据库连接,创建好后会显示你所创建的连接名,如图mysqldb ...

  9. mybatis中映射文件和实体类的关联性

    mybatis的映射文件写法多种多样,不同的写法和用法,在实际开发过程中所消耗的开发时间.维护时间有很大差别,今天我就把我认为比较简单的一种映射文件写法记录下来,供大家修改建议,争取找到一个最优写法~ ...

  10. mybatis 接口中定义方法、映射文件、实体类之间的关系?

    一.定义实体类 ,注意需求 是一对多还是多对一.  这里用员工和部门  多对一的关系举例. package com.zs.entity; /* * /* * 多对一? * 多个员工 对应一个部门 一个 ...

随机推荐

  1. 阿里DataX极简教程

    目录 简介 工作流程 核心架构 核心模块介绍 DataX调度流程 支持的数据 实践 下载 环境 执行流程 引用 简介 DataX是一个数据同步工具,可以将数据从一个地方读取出来并以极快的速度写入另外一 ...

  2. lvs之DR模式的实操演练

    理论 我是内部服务,代替我访问外部网络,这是正向代理:代替外部网络访问我,这是反向代理 槽位 sh根据源地址.调度到某个节点,dh,根据目标地址,调度到某个节点, 实战演练 默认策略以及修改策略 查看 ...

  3. Java基础 韩顺平老师的 常用类 的部分笔记

    459,八大Wrapper类 包装类的分类 1) 针对八种基本数据类型相应的引用类型-包装类 2) 有了类的特点, 就可以调用类中的方法. 460,装箱和拆箱 package com.hspedu.W ...

  4. 基于Python的性能优化

    一.多线程 在CPU不密集.IO密集的任务下,多线程可以一定程度的提升运行效率. import threading import time import requests def fetch_url( ...

  5. springboot 整合mail 发送邮件

    springboot 整合mail 发送邮件 pom.xml <properties> <java.version>1.8</java.version> <p ...

  6. iNeuOS工业互联网操作系统,增加电力IEC104协议

    1.      概述... 2 2.      配置IEC104协议设备驱动... 2 1.   概述 IEC60870-5-104 是一种电力自动化系统中常用的通信协议,使用 TCP/IP 协议作为 ...

  7. 领域驱动设计(Domain-Driven Design,简称DDD)【简介 个人学习笔记】

    找到了第 1 篇资料:领域驱动设计详解:是什么.为什么.怎么做? - 知乎 找到了第 2 篇资料:领域驱动架构(DDD)建模中的模型到底是什么? - 知乎 找到了第 3 篇资料:一文看懂DDD 领域驱 ...

  8. 7.18考试总结(NOIP模拟19)[u·v·w]

    我们不是狼,我们只是长着獠牙的羊...... 前言 我真 TM 爱死 \(\frac{1}{4}\) 了. 老实说,这套题是真恶心,第一题还有一点思路,到了后面是一点都搞不定了. 总的来说,主要原因是 ...

  9. 安装vmware17和下载红帽镜像

    安装vmware17 一.下载 1.访问vmware官网 (也可以使用这个链接https://www.vmware.com/products/workstation-pro/workstation-p ...

  10. LeetCode 675. Cut Off Trees for Golf Event 为高尔夫比赛砍树 (C++/Java)

    题目: You are asked to cut off trees in a forest for a golf event. The forest is represented as a non- ...