这是我的实体:
@Entity
@Table(name="log_shop")
public class LogShop {
@Id
@GeneratedValue
private int id;
private String platform;
@Type(type="org.jadira.usertype.dateandtime.joda.PersistentDateTime")
private DateTime logged;
@ManyToOne
private Player player;
private String type;
@Column(name="type_value")
private String typeValue;
@Column(name="shop_source")
private String shopSource;
@Column(name="buy_confirm")
@Type(type="org.hibernate.type.NumericBooleanType")
private boolean buyConfirm;
@Column(name="buy_yes")
@Type(type="org.hibernate.type.NumericBooleanType")
private boolean buyYes;
@Column(name="not_enough_coins")
@Type(type="org.hibernate.type.NumericBooleanType")
private boolean notEnoughCoins;
@Column(name="not_enough_coins_yes")
@Type(type="org.hibernate.type.NumericBooleanType")
private boolean notEnoughCoinsYes;
LogShop() {}
public LogShop(String platform, DateTime logged, Player player, String type, String typeValue, String shopSource, boolean buyConfirm, boolean buyYes,
boolean notEnoughCoins, boolean notEnoughCoinsYes) {
this.platform = platform;
this.logged = logged;
this.player = player;
this.type = type;
this.typeValue = typeValue;
this.shopSource = shopSource;
this.buyConfirm = buyConfirm;
this.buyYes = buyYes;
this.notEnoughCoins = notEnoughCoins;
this.notEnoughCoinsYes = notEnoughCoinsYes;
}
}
启动时,Hibernate(使用hbm2ddl validate)会抱怨org.hibernate.HibernateException: Missing column: count in xxxxx.log_shop
但是正如您所看到的,实体类中没有引用名为count
的列。为什么Hibernate要求它出现在数据库中?
如需完整参考,请参阅表格:
CREATE TABLE `log_shop` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`platform` varchar(26) NOT NULL DEFAULT 'web',
`logged` datetime NOT NULL,
`player_id` int(11) NOT NULL,
`type` varchar(26) NOT NULL,
`type_value` varchar(26) NOT NULL,
`shop_source` varchar(26) NOT NULL,
`buy_confirm` int(1) NOT NULL,
`buy_yes` int(1) NOT NULL,
`not_enough_coins` int(1) NOT NULL,
`not_enough_coins_yes` int(1) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
答案 0 :(得分:1)
@Table(name="log_shop")
应用于另一个实体类,它确实引用了count
列。
尽管Hibernate提到了哪个类和字段,但它会很好。