我在寻找答案时发现了类似的问题,但是,他们都没有回应我的请求。
我创建了一个模型“ 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/