我想知道如何在 Spring Framework 的抽象类中初始化一个变量。我无法更改已经存在的构造函数。我提到了http://forum.spring.io/forum/spring-projects/container/47496-dependency-inject-abstract-class-property但该属性具有null
价值。
我abtract=true
在我的 xml 文件中使用过。
我的抽象类:
package com.hi;
public abstract class Xyz implements Serializable{
private String path;
public String getPath(){return path;}
public void setPath(String path){this.path = path;}
private void init(){
//path will be used to get the file from the location
}
public Serializable getExpr(){
init();
}
}
我的继承类:
public class Abc extends Xyz implements Serializable{
private Abc(String a){
super(a,TYPE.data);
}
public static Abc of(){
return new Abc(a);
}
}
我的 xml 文件:
<bean id="xyz"
class="com.hi.Xyz"
abstract="true">
<property name="path" value="${PATH}" />
</bean>
继承的类不必获取文件。所以抽象类可以直接注入路径并使用路径。