eclipse + JBoss 5 + EJB3开发指南(10) - 编程入门网
作者 佚名技术
来源 NET编程
浏览
发布时间 2012-06-15
抛出下面的异常:
org.hibernate.MappingException: Repeated column in mapping for entity: entity.SavingsAccount column: account_type (should be mapped with insert="false" update="false") 活期帐户的实体Bean的代码如下: package entity; import javax.persistence.DiscriminatorValue; import javax.persistence.Entity; @Entity @DiscriminatorValue("C") public class CheckingAccount extends Account { private double overdraftLimit; public double getOverdraftLimit() { return overdraftLimit; } public void setOverdraftLimit(double overdraftLimit) { this.overdraftLimit = overdraftLimit; } } eclipse + JBoss 5 + EJB3开发指南(10)(3)时间:2011-09-18 blogjava 哈佛校训在CheckingAccount类中通过@DiscriminatorValue注释将account_type字段的值设为了C。如果使用 CheckingAccount类来映射t_accounts表时,EJB容器会自动将t_accounts表的account_type字段值设为C (并不需要开发人员干预)。 储蓄存款帐户对应的实体Bean的代码如下: package entity; import javax.persistence.DiscriminatorValue; import javax.persistence.Entity; @Entity @DiscriminatorValue("S") public class SavingsAccount extends Account { private double interestRate; public double getInterestRate() { return interestRate; } public void setInterestRate(double interestRate) { this.interestRate = interestRate; } } 可以下面的代码进行测试: CheckingAccount ca = new CheckingAccount(); ca.setBalance(342); ca.setOverdraftLimit(120); em.persist(ca); // 自动将account_type字段的值设为C SavingsAccount sa = new SavingsAccount(); sa.setBalance(200); sa.setInterestRate(321); em.persist(sa); // 自动将account_type字段的值设为S |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
关于eclipse + JBoss 5 + EJB3开发指南(10) - 编程入门网的所有评论