java - 无法初始化空白的最终字段

标签 java spring scope annotations

我在寻找答案时发现了类似的问题,但是,他们都没有回应我的请求。

我创建了一个模型“ session ”

@Entity
@Scope("prototype")
@Table(name="MEETINGS")
public class Meeting {



@Id @GeneratedValue(strategy=GenerationType.IDENTITY)
private Integer id;

@NotEmpty
@Column(name="name", nullable=false)
private String name;

@NotEmpty
@Column(name="description", nullable=false)
private String description;

@NotEmpty
@Column(name="allowStartStopRecording", nullable=false)
private String allowStartStopRecording;

@NotEmpty
@Column(name="autoStartRecording", nullable=false)
private String autoStartRecording;

@NotEmpty
@Column(name="record", nullable=false)
private String record;

@NotEmpty
@Column(name="voiceBridge", nullable=false)
private String voiceBridge;

public Integer getId() {
    return id;
}

public void setId(Integer id) {
    this.id = id;
}

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public String getDescription() {
    return description;
}

public void setDescription(String description) {
    this.description = description;
}

public String getAllowStartStopRecording() {
    return allowStartStopRecording;
}

public void setAllowStartStopRecording(String allowStartStopRecording) {
    this.allowStartStopRecording = allowStartStopRecording;
}

public String getAutoStartRecording() {
    return autoStartRecording;
}

public void setAutoStartRecording(String autoStartRecording) {
    this.autoStartRecording = autoStartRecording;
}

public String getRecord() {
    return record;
}

public void setRecord(String record) {
    this.record = record;
}

public String getVoiceBridge() {
    return voiceBridge;
}

public void setVoiceBridge(String voiceBridge) {
    this.voiceBridge = voiceBridge;
}


}

并在尝试创建 DAO“MeetingDAO”时,

public interface MeetingDAO {

Meeting meeting;

String createMeeting();

String deleteMeeting();

String getMeetings();

String updateMeeting();
}

我收到以下错误:空白的最终现场 session 可能尚未在包含 session session 的行中初始化;

提前谢谢你。

最佳答案

您正试图在接口(interface)中声明一个成员变量:

public interface MeetingDAO {

    Meeting meeting;

您不能在接口(interface)中声明成员变量。成员 meeting 自动成为 public static final(即常量),您无需对其进行初始化。

不要在MeetingDAO 接口(interface)中声明meeting。如果您需要声明类型为 Meeting 的成员变量,请在实现该接口(interface)的类中进行声明。但坦率地说,如果 MeetingDAO 的实现有一个类型为 Meeting 的成员变量,那会很奇怪——所以你可能根本不应该有这个成员变量。

(另外,为什么接口(interface)中的所有方法都返回 String 而没有接受任何参数?这看起来不太符合逻辑)。

关于java - 无法初始化空白的最终字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37525016/

相关文章:

java - 用于多个 JSON 对象模式的 Spring IntegrationFlow

java - 速度空值和空字符串

java - 我可以修改一个 "referenced"整型变量吗?

spring - 选择组件加载顺序

spring - 我可以在颁发访问 token 时包含用户信息吗?

java - 使用类名创建类

java - 如何在Spring中使用Template Hibernate保存继承的类

javascript - AngularJS 服务返回数据,但是在编辑时它会编辑原始服务数据吗?

javascript - 返回 Javascript 变量和性能

javascript - 如何将子对象的范围限制到父对象?