浅谈springboot 属性定义

 更新时间:2017年08月28日 16:13:14   作者:小鱼嘻嘻  
本篇文章主要介绍了浅谈springboot 属性定义,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

本文介绍了浅谈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

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

相关文章

  • Spring MVC学习笔记之Controller查找(基于Spring4.0.3)

    Spring MVC学习笔记之Controller查找(基于Spring4.0.3)

    这篇文章主要给大家介绍了关于Spring MVC学习笔记之Controller查找(基于Spring4.0.3)的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-03-03
  • Java利用随机分钱模拟财富变化

    Java利用随机分钱模拟财富变化

    这篇文章主要为大家详细介绍了Java如何利用随机分钱思想模拟财富的变化,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2022-12-12
  • 详解Java中clone的写法

    详解Java中clone的写法

    这篇文章主要介绍了Java中clone的写法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-07-07
  • 详解Spring 框架中切入点 pointcut 表达式的常用写法

    详解Spring 框架中切入点 pointcut 表达式的常用写法

    这篇文章主要介绍了详解Spring 框架中切入点 pointcut 表达式的常用写法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • Graphics2D 写图片中文乱码问题及解决

    Graphics2D 写图片中文乱码问题及解决

    这篇文章主要介绍了Graphics2D 写图片中文乱码问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-11-11
  • Java中的拷贝数组CopyOnWriteArrayList详解

    Java中的拷贝数组CopyOnWriteArrayList详解

    这篇文章主要介绍了Java中的拷贝数组CopyOnWriteArrayList详解,ArrayList和LinkedList都不是线程安全的,如果需要线程安全的List,可以使用synchronizedList来生成一个同步list,但是这个同步list的方法都是通过synchronized修饰来保证同步的,需要的朋友可以参考下
    2023-12-12
  • java操作excel表格详解

    java操作excel表格详解

    在日常工作中,对Excel工作表格的操作处理可是多的数不清楚,下面是java语言对其的操作,有需要的小伙伴可以参考下
    2021-10-10
  • Spring MVC中自定义拦截器的实例讲解

    Spring MVC中自定义拦截器的实例讲解

    下面小编就为大家带来一篇Spring MVC中自定义拦截器的实例讲解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • Java读写文件方法总结(推荐)

    Java读写文件方法总结(推荐)

    下面小编就为大家带来一篇Java读写文件方法总结(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-05-05
  • java设计模式笔记之适配器模式

    java设计模式笔记之适配器模式

    这篇文章主要为大家详细介绍了java设计模式之适配器模式笔记,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-10-10

最新评论