Spring
June 6, 2020

M01 Q29 What is @Value used for?

@Value is used for:

  • Setting simple values of Spring Bean Fields, Method Parameters, Constructor Parameters
  • Injecting property/environment values into Spring Bean Fields, Method Parameters, Constructor Parameters. Spring uses abstraction on top of the property and environment values. So you are using one solution to inject all values from properties and environments.
  • Injecting results of SpEL expressions into Spring Bean Fields, Method Parameters, Constructor Parameters
  • Injecting values from other Spring Beans into Spring Bean Fields, Method Parameters, Constructor Parameters
  • Injecting values into collections (arrays, lists, sets, maps) from literals, property/environment values, other Spring Beans
  • Setting default values of Spring Bean Fields, Method Parameters, Constructor Parameters when referenced value is missing