Инициализировать абстрактное свойство в 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>

Унаследованный класс не должен получать файл. Таким образом, абстрактный класс может иметь прямой путь и использовать путь.

0 ответов

Другие вопросы по тегам