我有一种情况,我只想在@Required
的某些实现上将setter方法注释为parentClass
。但是,除非我对基类进行注释,否则Spring不会将该方法识别为配置中所需的方法(也就是说,如果该字段不存在,则不会出现“缺少必需属性:foo”。以下是我正在尝试使用的代码:
public abstract class parentClass {
public abstract void setFoo(Object foo);
}
public abstract class childClass extends parentClass {
@Override
@Required
public void setFoo(Object foo) {
//setter code
}
}
我在这里做错了什么?是否可以仅为某些子类指定注释?
答案 0 :(得分:2)
不继承对类以外的项的注释。请参阅@Inherited Javadoc
请注意,如果使用带注释的类型来注释除类之外的任何内容,则此元注释类型无效。另请注意,此元注释仅导致注释从超类继承;已实现的接口上的注释无效。
我不确定JSR 305处理器如何管理这个技巧。