1

我想知道如何在 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>

继承的类不必获取文件。所以抽象类可以直接注入路径并使用路径。

4

0 回答 0