播放Java> 2.6将Config注入扩展io.ebean.Model的类

时间:2018-07-04 09:42:01

标签: playframework-2.6

对于Play <= 2.5,此问题已解决了很多次,但最近的迁移使它对于Play> = 2.6的工作方式有所不同。

我需要访问模型中conf / application.conf中存储的变量。每个模型都扩展io.ebean.Model,其中大多数都有构造函数。

我尝试应用Migration guidelines,但是它们只引用没有函数构造函数的空类。

就我而言,我需要访问模型中的conf,该模型实际上具有一个构造函数。

我的问题:Eclipse突出显示我的构造函数,并显示错误“空白的最终字段conf可能尚未初始化”。我究竟做错了什么 ?有人有我想要做的可行的例子吗?

这是我的代码,试图应用新方法注入Config:

BaseModel.java

package models;    
import io.ebean.Model;

import javax.persistence.Id;
import javax.persistence.MappedSuperclass;

@MappedSuperclass
public class BaseModel extends Model {
   @Id
   public Long id;
}

MyClass.java

@Entity
@Table(name = "my_class")
public class MyClass extends BaseModel {

    @Column(updatable = true)
    public int aField;   

    private final Config config;

    @javax.inject.Inject
    public MyClass(Config config) {
        this.config = config;
    }

    public MyClass (int aField) {
        this.aField = aField;       
    }

    public void myMethod() {
        String test = config.getString("application.myResource");
    }
}

0 个答案:

没有答案