浅谈springboot 属性定义

发布时间 - 2026-01-11 02:59:59    点击率:

本文介绍了浅谈springboot 属性定义,分享给大家。具体如下:

简单属性自定义

一般属性可以定义在通用的配置文件application.properties里面

# 自定义属性
boot.userName = yuxi

如何获取呢?

按照spring的获取方式就可以了,很简单

 @Value(value = "${boot.userName}")
 private String userName;

复杂属性自定义

在配置里配置属性

# 复杂属性
test.id=1
test.name=xiaoyuxixi
test.money=100000000

定义实体

//需要注意这个属性是必须的
@ConfigurationProperties(prefix = "test")
public class Account {
  private int id;
  private String name;
  private double money;

  public int getId() {
    return id;
  }

  public void setId(int id) {
    this.id = id;
  }

  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }

  public double getMoney() {
    return money;
  }

  public void setMoney(double money) {
    this.money = money;
  }

  @Override
  public String toString() {
    return "Account{" +
        "id=" + id +
        ", name='" + name + '\'' +
        ", money=" + money +
        '}';
  }
}

注入属性

@RestController
// 这个属性也是必须的
@EnableConfigurationProperties({Account.class})
public class HelloController {
  //自定义属性
  @Value(value = "${boot.userName}")
  private String userName;
  @Autowired
  private Account account;

  /**
   * 复杂 属性自定义
   *
   * @return
   */
  @RequestMapping("/hard")
  public Object getHardProperties() {

    return account;
  }

  /**
   * welcome spring boot
   *
   * @return
   */
  @RequestMapping(value = "/", method = RequestMethod.GET)
  public String index() {
    return "Greetings from Spring Boot! ";
  }

  /**
   * 简单 属性自定义
   *
   * @return
   */
  @RequestMapping("/user")
  public String getProperties() {
    System.out.println(userName);
    return userName;
  }
  
}

在配置完复杂的属性之后,会发现这样写的话 application.properties里内容会很多有很多属性不是公共的配置,放在这里不是有优雅,可以把这些配置单独写一个配置文件

配置文件获取

添加配置文件 (test.properties)

# 配置文件获取
lakala.id=1
lakala.name=xiaoyuxixi
lakala.money=100000000

获取属性文件(在实体上加入以下配置文件)

@Configuration
@PropertySource(value = "classpath:test.properties")

源码地址:springbootlearning_jb51.rar

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# springboot  # 属性定义  # 属性  # 详解Spring Boot 属性配置和使用  # springboot如何读取配置文件(application.yml)中的属性值  # Spring boot将配置属性注入到bean类中  # 深入理解Spring Boot属性配置文件  # 自定义  # 配置文件  # 放在  # 是有  # 有很多  # 给大家  # 很简单  # 浅谈  # 需要注意  # 大家多多  # 就可以  # String  # br  # test  # private  # id  # PropertySource  # java  # Configuration  # ConfigurationProperties 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Microsoft Edge如何解决网页加载问题 Edge浏览器加载问题修复  Win11怎么关闭透明效果_Windows11辅助功能视觉效果设置  Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程  如何快速配置高效服务器建站软件?  Laravel怎么调用外部API_Laravel Http Client客户端使用  手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?  如何在宝塔面板中创建新站点?  Laravel如何配置和使用队列处理异步任务_Laravel队列驱动与任务分发实例  Laravel如何集成第三方登录_Laravel Socialite实现微信QQ微博登录  Laravel如何实现全文搜索功能?(Scout和Algolia示例)  如何快速搭建高效服务器建站系统?  Win11怎样安装网易有道词典_Win11安装词典教程【步骤】  b2c电商网站制作流程,b2c水平综合的电商平台?  Laravel 419 page expired怎么解决_Laravel CSRF令牌过期处理  谷歌浏览器下载文件时中断怎么办 Google Chrome下载管理修复  Android okhttputils现在进度显示实例代码  EditPlus中的正则表达式 实战(1)  网站制作免费,什么网站能看正片电影?  如何用PHP快速搭建高效网站?分步指南  大学网站设计制作软件有哪些,如何将网站制作成自己app?  INTERNET浏览器怎样恢复关闭标签页_INTERNET浏览器标签恢复快捷键与方法【指南】  PHP 实现电台节目表的智能时间匹配与今日/明日轮播逻辑  如何在云主机快速搭建网站站点?  如何在云主机上快速搭建多站点网站?  如何正确下载安装西数主机建站助手?  如何挑选高效建站主机与优质域名?  简单实现Android验证码  Laravel API资源类怎么用_Laravel API Resource数据转换  jQuery中的100个技巧汇总  如何在建站之星绑定自定义域名?  作用域操作符会触发自动加载吗_php类自动加载机制与::调用【教程】  Windows10电脑怎么设置虚拟光驱_Win10右键装载ISO镜像文件  如何选择PHP开源工具快速搭建网站?  如何为不同团队 ID 动态生成多个独立按钮  网站制作软件有哪些,制图软件有哪些?  微博html5版本怎么弄发超话_超话进入入口及发帖格式要求【教程】  javascript事件捕获机制【深入分析IE和DOM中的事件模型】  Laravel中的withCount方法怎么高效统计关联模型数量  如何在香港服务器上快速搭建免备案网站?  怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?  Windows10如何删除恢复分区_Win10 Diskpart命令强制删除分区  Edge浏览器怎么启用睡眠标签页_节省电脑内存占用优化技巧  Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID  JavaScript 输出显示内容(document.write、alert、innerHTML、console.log)  如何构建满足综合性能需求的优质建站方案?  制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?  Laravel如何保护应用免受CSRF攻击?(原理和示例)  网站制作大概多少钱一个,做一个平台网站大概多少钱?  java获取注册ip实例  高性能网站服务器部署指南:稳定运行与安全配置优化方案