我有一个实体Note,还有一个代表最喜欢的Note的对象叫FavoriteNote,这两个对象对应的表定义如下(firebird):CREATE TABLE NOTE (
ID INTEGER,
TITLE VARCHAR(100) CHARACTER SET UTF8,
CONTENT BLOB SUB_TYPE 1 CHARACTER SET UTF8,
TYPE_NO INTEGER,
DEL SMALLINT,
CREATE_DATE TIMESTAMP,
UPDATE_DATE TIMESTAMP);CREATE TABLE FAVORITE (
NOTE_NO INTEGER NOT NULL,
DROP_IN_DATE DATE);代码分别为https://github.com/fxbird/notebook/blob/master/src/bean/Note.java ,https://github.com/fxbird/notebook/blob/master/src/bean/FavoriteNote.java,
Note.hbm.xml在https://github.com/fxbird/notebook/blob/master/src/dao/hbn/Note.hbm.xml,
这种情况FavoriteNote显然不是Note的一部分,所以不能用作组件,但我觉得当成实体也有问题,实体要求有主键,而这里favorite只要note_no不重复就可以了,实际的主键就是Note,不能把另一个实体当成主键来用吧,这是我疑惑的地方,请高手解答。
ID INTEGER,
TITLE VARCHAR(100) CHARACTER SET UTF8,
CONTENT BLOB SUB_TYPE 1 CHARACTER SET UTF8,
TYPE_NO INTEGER,
DEL SMALLINT,
CREATE_DATE TIMESTAMP,
UPDATE_DATE TIMESTAMP);CREATE TABLE FAVORITE (
NOTE_NO INTEGER NOT NULL,
DROP_IN_DATE DATE);代码分别为https://github.com/fxbird/notebook/blob/master/src/bean/Note.java ,https://github.com/fxbird/notebook/blob/master/src/bean/FavoriteNote.java,
Note.hbm.xml在https://github.com/fxbird/notebook/blob/master/src/dao/hbn/Note.hbm.xml,
这种情况FavoriteNote显然不是Note的一部分,所以不能用作组件,但我觉得当成实体也有问题,实体要求有主键,而这里favorite只要note_no不重复就可以了,实际的主键就是Note,不能把另一个实体当成主键来用吧,这是我疑惑的地方,请高手解答。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货