我正在尝试将JavaFX BooleanPropety添加到我的模型中,该模型由Hibernate保留但我收到以下错误。
Caused by: org.hibernate.MappingException: Could not determine type for: javafx.beans.property.BooleanProperty.
JavaFX StringProperty坚持得很好,所以我有点困惑。
我的模型类如下
@Entity
public class Currency {
private String uuid;
private BooleanProperty isDefault = new SimpleBooleanProperty();
private StringProperty name = new SimpleStringProperty();
private StringProperty code = new SimpleStringProperty();
@Id
@GeneratedValue(generator = "uuid")
@GenericGenerator(name = "uuid", strategy = "uuid2")
@Column(name = "id")
public String getUuid() {
return uuid;
}
public void setUuid(String uuid) {
this.uuid = uuid;
}
public String getName() {
return name.get();
}
public void setName(String name) {
this.name.set(name);
}
public String getCode() {
return code.get();
}
public void setCode(String code) {
this.code.set(code);
}
public boolean getIsDefault() {
return isDefault.get();
}
public void setIsDefault(boolean isDefault) {
this.isDefault.set(isDefault);
}
public StringProperty nameProperty() {
return name;
}
public StringProperty codeProperty() {
return code;
}
public BooleanProperty isDefaultProperty(){
return isDefault;
}
}
答案 0 :(得分:4)
重命名
private BooleanProperty isDefault;
到
private BooleanProperty default;
解决了这个问题。原因是布尔字段的命名约定在java中完全不同。以下link
解释了这一点