Java 未知列';。。。jDodeAttachedState';在';字段列表';gwt项目
我有奇怪的问题。当我在没有gwt的情况下运行项目时,只需休眠即可,但当我在gwt中插入它的代码时,就会出现此异常Java 未知列';。。。jDodeAttachedState';在';字段列表';gwt项目,java,mysql,hibernate,gwt,Java,Mysql,Hibernate,Gwt,我有奇怪的问题。当我在没有gwt的情况下运行项目时,只需休眠即可,但当我在gwt中插入它的代码时,就会出现此异常 PM org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions WARN: SQL Error: 1054, SQLState: 42S22 PM org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions ERROR: Unknown column
PM org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
WARN: SQL Error: 1054, SQLState: 42S22
PM org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
ERROR: Unknown column 'employee0_.jdoDetachedState' in 'field list'
是我干的
List<Employee> list = session.createQuery("FROM Employee").list();
我的班级看起来怎么样
@Entity
@Table(name="employee")
public class Employee implements Serializable{
@Id
public Integer id;
@Column(nullable=false)
public String first_name;
@Column(nullable=false)
public String second_name;
@OneToOne
@JoinColumn(name = "post")
public Position post;
@Column(nullable=false)
public String born;
@Column(nullable=false)
public Integer salary;
public String department;
public Employee(){}
... public getters and setters
}
其他查询可以工作,但这个不行。我已经找到了,但无法理解它有什么帮助。这是因为您没有在
Employee
类中提到jodetachedstate
字段的映射
只需在Employee
类中添加jdoDetachedState
字段的映射即可
@Column(nullable=false)
public String jdoDetachedState;
还要确保您的表列名与实体类字段名相同,否则使用@column
注释的名称
属性作为注释
@Column(name = "column_name",nullable=false)
public String fieldName;
希望这能解决您现在不理解的问题。我有一张“部门”的桌子。它起作用了,但当我在表中添加一列时,它也开始失败,出现了相同的异常:
Unknown column 'department0_.jdoDetachedState' in 'field list'
加
没有帮助我找到了解决办法!当我在mysql的表中添加
jdoDetachedState VARCHAR(11)
列时,所有的工作都开始了 我也遇到了同样的问题,通过添加这些行,我得到了解决方案:
@Transient
protected Object[] jdoDetachedState;
这对我有帮助。也许,这对任何人都有帮助。对于简单的google app engine项目(非maven),您可以通过取消选中使用datanucleus JDO/JPA访问数据存储来解决此问题。 步骤:
我已经找到了解决方案,我不知道它的正确编程方式,但它解决了我的问题!我修改了我的表,并在mysql中的我的表中添加了
jdoDetachedState
列的text
列。
注意:不要在java文件中添加jdoDetachedState。谢谢,我会尝试,但是当我试图放置public Object[]jodetachedState;这无助于你为什么选择对象[]?您的表中JDodeachedState列的数据类型是什么?这是无法解释的,现在我已经造成了:java.lang.ClassFormatError:类文件com/example/myproject/shared/model/employeegwt和hibernate中重复的字段名和签名使用不同的库进行反序列化,因为我从eclipseOk的gwt插件中删除了验证JAR,但是。。。你的评论与主题无关)жжжбббббббббзббббб。好的,如果你没有看到问题,我会指导你使用其他语言的堆栈溢出政策。说到我的话,这只是教育问题。如果有人告诉我我混淆了“It's”和“its”(虽然我不知道),俄罗斯帖子的情况也一样。
@Column(nullable=false)public String jdoDetachedState;
@Transient
protected Object[] jdoDetachedState;