下面列出了org.springframework.beans.factory.annotation.Value#value ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
@Override
protected void processField(Object bean, String beanName, Field field) {
// register @Value on field
Value value = field.getAnnotation(Value.class);
if (value == null) {
return;
}
Set<String> keys = placeholderHelper.extractPlaceholderKeys(value.value());
if (keys.isEmpty()) {
return;
}
for (String key : keys) {
SpringValue springValue = new SpringValue(key, value.value(), bean, beanName, field, false);
springValueRegistry.register(beanFactory, key, springValue);
logger.debug("Monitoring {}", springValue);
}
}
@Override
protected void processMethod(Object bean, String beanName, Method method) {
//register @Value on method
Value value = method.getAnnotation(Value.class);
if (value == null) {
return;
}
//skip Configuration bean methods
if (method.getAnnotation(Bean.class) != null) {
return;
}
if (method.getParameterTypes().length != 1) {
logger.error("Ignore @Value setter {}.{}, expecting 1 parameter, actual {} parameters",
bean.getClass().getName(), method.getName(), method.getParameterTypes().length);
return;
}
Set<String> keys = placeholderHelper.extractPlaceholderKeys(value.value());
if (keys.isEmpty()) {
return;
}
for (String key : keys) {
SpringValue springValue = new SpringValue(key, value.value(), bean, beanName, method, false);
springValueRegistry.register(beanFactory, key, springValue);
logger.info("Monitoring {}", springValue);
}
}
private ExpressionValueNamedValueInfo(Value annotation) {
super("@Value", false, annotation.value());
}
private ExpressionValueNamedValueInfo(Value annotation) {
super("@Value", false, annotation.value());
}
private ExpressionValueNamedValueInfo(Value annotation) {
super("@Value", false, annotation.value());
}
private ExpressionValueNamedValueInfo(Value annotation) {
super("@Value", false, annotation.value());
}
private ExpressionValueNamedValueInfo(Value annotation) {
super("@Value", false, annotation.value());
}
private ExpressionValueNamedValueInfo(Value annotation) {
super("@Value", false, annotation.value());
}