Hibernate-如何在插入时忽略未映射的字段
尊敬的所有hibernate开发人员,Hibernate-如何在插入时忽略未映射的字段,hibernate,spring-mvc,Hibernate,Spring Mvc,尊敬的所有hibernate开发人员, 下面是我在应用程序中使用的hibernate hbm2java类。当我通过连接两个表从数据库获取数据时,我需要name字段。(此数据必须显示在UI的网格中。) 但是,当我尝试将记录插入到rxJournal表中时,遇到了问题。 错误是: Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'name' in 'field list' 我
下面是我在应用程序中使用的hibernate hbm2java类。当我通过连接两个表从数据库获取数据时,我需要name字段。(此数据必须显示在UI的网格中。)
但是,当我尝试将记录插入到rxJournal表中时,遇到了问题。
错误是:
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'name' in 'field list'
我想在使用hibernate插入或更新记录时忽略/跳过“name”字段。
以下是我的HBM课程:
@Entity
@Table(name = "rxJournal", catalog = "Company")
public class RxJournalBean implements java.io.Serializable {
private Integer rxJournalId;
private String entryMemo;
private String name;
....
@Id
@GeneratedValue(strategy = IDENTITY)
@Column(name = "rxJournalID", unique = true, nullable = false)
public Integer getRxJournalId() {return this.rxJournalId;}
public void setRxJournalId(Integer rxJournalId) {this.rxJournalId = rxJournalId;}
@Column(name = "EntryMemo")
public String getEntryMemo() {return this.entryMemo;}
public void setEntryMemo(String entryMemo) {this.entryMemo = entryMemo;}
public String getName() {return name;}
public void setName(String name) {this.name = name;}
}
我可以通过单独删除name字段来创建另一个bean,但是我不想使用冗余代码。请给我一些建议
如果我重复提出任何问题,请忽略,并为我指出正确的解决方案
提前感谢。如果我理解正确,您希望实体中有一个name属性,但希望该属性是非持久性的(即完全被Hibernate忽略) 如果是,这就是@Transient的作用:
@Transient
public String getName() {
return name;
}
当然,对于Hibernate从数据库加载的每个实例,name属性都将为null。只有当您指定一个值时,它才会有一个值。如果我理解正确,您希望实体中有一个name属性,但希望该属性是非持久性的(即完全被Hibernate忽略) 如果是,这就是@Transient的作用:
@Transient
public String getName() {
return name;
}
当然,对于Hibernate从数据库加载的每个实例,name属性都将为null。只有分配一个值,它才会有一个值。Hai@JB Nizet,非常感谢。是的,这正是我想要的。您帮助了我。Hai@JB Nizet,您的解决方案“@Transient”在我的本地服务器和测试服务器上运行良好。然而,当我进入生产阶段时,我得到了一个错误。我想我少了一些罐子。我的“pom.xml”中有“persistenceapi.1.0.jar”和“hibernate core.3.6.10.final.jar”。请建议我是否遗漏了任何内容。再问一个问题,在哪里显示您的pom、确切的错误消息以及异常的堆栈跟踪。Hai@JB Nizet,我已经问了新问题。Hai@JB Nizet,非常感谢。是的,这正是我想要的。您帮助了我。Hai@JB Nizet,您的解决方案“@Transient”在我的本地服务器和测试服务器上运行良好。然而,当我进入生产阶段时,我得到了一个错误。我想我少了一些罐子。我的“pom.xml”中有“persistenceapi.1.0.jar”和“hibernate core.3.6.10.final.jar”。请建议我是否遗漏了任何内容。再问一个问题,在哪里显示您的pom、确切的错误消息以及异常的堆栈跟踪。Hai@JB Nizet,我已经问了新问题。