浅析Java中如何设置各种情况的默认值

1、方法的参数设置默认值,目前 Java 不支持这种写法,只能自己去变种实现

2、SpringBoot @Value 设置默认值

  SpringBoot如果我们使用了@Value来从配置文件读取值, 如果配置文件中没有这个配置项,就会报错:Could not resolve placeholder 'xxx' in value "${aaa.bbb.ccc}"

  解决方案:

@Value("${aaa.bbb.ccc:DefaultValue}")
// 如 @Value("${aaa.bbb.ccc:test}")
//默认值为test

3、POJO设置某个属性的默认值

public class ObjectDefaultValue {
    private Integer id = 0;
    private String name= "";
    private BigDecimal money = new BigDecimal("0.1");
    private Date createTime = DateTimeUtil.getDayDate(new Date());
  // 还可以通过设置 get 设置默认值
    public String getDefaultName() {
        if (getId()!=null && getId()>0){
            return "ID存在";
        }
        return "";
    }
  private String orderPrice;//定义类的属性
  /*
   * get set方法
   * String.trim() 返回字符串的副本,忽略前导空白和尾部空白。
   */
  public String getOrderPrice() {
      if("".equals(orderPrice)||orderPrice==null){                        
          return "0";//去除该属性的前后空格并进行非空非null判断 
      }
       return orderPrice;
  }
  public void setOrderPrice(String orderPrice) {
     this.orderPrice = orderPrice == null ? null : orderPrice.trim();
  }
}

 

posted @ 2017-10-23 13:39  古兰精  阅读(3239)  评论(0编辑  收藏  举报