springboot 中 @value注入

1.八种基本数据类型, 字符串, 日期, 数组

使用@Value("${属性名}")属性注入

usernames: zhangsan
price: 100.1
sex: true
bir: 2019/11/10
strs: a,b,c
@Service
public class AdminServiceImpl implements AdminService {
   @Value("${usernames}")
   private String username;
   @Value("${price}")
   private Double price;
   @Value("${sex}")
   private Boolean sex;
   @Value("${bir}")
   private Date bir;
   @Value("${strs}")
   private String[] strs;
   ...
}
2.集合(list, set, map)

使用@Value("#{’${集合属性名}’.split(’,’)}")属性注入

list: zhsnagsan,lisi
set: wangwu,zhaoliu
map: "{name:'zhangsan',addr:'bj'}"
@Service
public class AdminServiceImpl implements AdminService {
   @Value("#{'${list}'.split(',')}")
   private List<String> list;
   private Map<String,String> map;
   @Value("#{'${set}'.split(',')}")
   @Value("#{${map}}")
   ...
}
3.对象
使用前缀(prefix)注入, 生成自己的元数据
1.引入依赖
<dependency>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-configuration-processor</artifactId>
 <optional>true</optional>
</dependency>

: 2.重新启动springboot项目后, 才会出现提示
3.相关操作

admin:
id: aaa
age: 1
map:
 age: 1
 code: 10000
list: aa,bb,cc
@Component
@ConfigurationProperties(prefix = "admin")
public class Admin {
 private String id;
 private Integer age;
 private List<String> list;
 private Map<String, Integer> map;
 
/* get/set/tostring/... */
}
@Service
public class AdminServiceImpl implements AdminService {
     @Autowired
 private Admin admin;
 ...
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值