gpt4 book ai didi

java - JDBCSQL异常: Column not found [@Column annotation is not working field in JPA]

转载 作者:行者123 更新时间:2023-12-02 11:51:41 26 4
gpt4 key购买 nike

我正在使用 JPA 应用程序。JPA 注释应用于 Getter 方法及其工作,但是当我尝试在字段上应用注释时,编译器会生成错误。我想在字段上应用注释。

@Entity
@Table(name="TB_DEMO",query="select q from TB_DEMO q")
public class Demo extends DomainRoot{

@Column(name="VAR_COUNT")
private int varCount;

public int getCount(){
return this.varCount;
}
public void setCount(int count){
this.varCount=count;
}
}

Error: org.springframeowork.dao.InvalidDataResourceUsageException: Could not prepare statement

org.h2.jdbc.JdbcSQLException: Column "QSXXXXXXXX_.VARCOUNT" not found

最佳答案

持久性提供程序不考虑您的字段属性,为什么 DomainRoot 或应用程序默认使用按属性映射(获取上的注释)进行访问,而您尝试使用按字段映射(字段上的注释)。

规范表明,在这种情况下(继承),行为是不可预测的。

对于您的示例,在类级别上增加 @Access(AccessType.FIELD) 或仅在整个类层次结构上使用相同的访问级别而不声明 @Access Annotations。

关于java - JDBCSQL异常: Column not found [@Column annotation is not working field in JPA],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47839416/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com