Инициализировать абстрактное свойство в Spring Framework
Мне интересно, как инициализировать переменную в абстрактном классе в 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>
Унаследованный класс не должен получать файл. Таким образом, абстрактный класс может иметь прямой путь и использовать путь.