对于@OneToMany关系,我必须映射到Objects吗?
我有下面的例子
@Entity
@Table(name="FOO_TABLE")
public class Foo {
@Id
@Column(name="ID")
@GeneratedValue
private int id;
?????
private List<String> bars;
}
如果酒吧是我的目标
@ManyToOne
@JoinColumn(name="ID_FOO")
问题就解决了 但是,我要避免创建仅代表一对字符串(引用键,值)的对象。
FOO和BAR存储在单独的表中
CREATE TABLE Foo (
ID INTEGER NOT NULL AUTO_INCREMENT,
//SOME OTHER PROPERTIES
PRIMARY KEY( ID),
);
CREATE TABLE Bar (
ID_FOO INTEGER,
VAL VARCHAR(256),
PRIMARY KEY (ID_FOO, VAL),
FOREIGN KEY ( ID_FOO) REFERENCES Foo( ID) ON DELETE CASCADE
);
@ElementCollection
是您要寻找的。这使您可以为非实体类(例如Embeddable或Basic)定义映射。
http://en.wikibooks.org/wiki/Java_Persistence/ElementCollection
您也可以使用@CollectionTable定义表。
@ElementCollection
@CollectionTable(name = "data" ....)
private List<String> data;
问题内容: 我有一个简单的JOINED文件层次结构: 如您所见,所有子表所做的就是共享Documents表中的相同ID。除此之外,还会添加一列,并且不会添加任何新属性。(还要注意,在层次结构中还有两个其他具体的子表,由和表示不相关。) 这是上述表的映射: Document.java : SystemDocument.java : ExternalDocument.java : 后者应映射到Docu
我的项目是在Windows-SpringIDE-TomcatV8上进行的。0用于windows,MySql5。该项目还涉及java7、Tomcat7。我所有的课都是自动注释的。问题是,当我在Centos上部署project时,我有java8、Tomcat8和一个异常。请提出一些解决问题的建议。 以下是linux上的例外情况: 组织。springframework。豆。工厂BeanCreationE
问题内容: 我正在使用JPA 2 + Hibernate 4.2.6进行Java项目,并且出现了奇怪的现象。 在我的模型中,我有两个相关实体:和 这非常有效:与某个特定对象相关的所有都已正确加载。 但是现在我需要将collecton 的tipe 从更改为。我更改了类型并再次运行了该应用程序,现在在…中出现了多个重复项,为什么可能呢?我知道允许重复,但是我的数据库中没有重复的记录,那么为什么要得到这
我正在创建一个新项目,并使用Spring Data JPA创建一些RESTendpoint。 只要json文件没有任何oneToMany数据,我就可以将其放到并持久化到我的主类(customer)中。然而,当张贴给客户,如果有任何数据,我会得到错误。 那些电子邮件 postman json测试 顺便说一句,我已经确认在客户控制器中,电子邮件包括在客户的请求体中。 客户控制器 因此,对于post或p
问题内容: 他们幸福地结婚了吗? 我正在使用最新版本的hibernate(4)和1.3版的joda-time hibernate支持,我也相信这是当前的最新版本。 使用批注时,一切似乎都正常(按预期方式创建了日期列): 一起使用这些版本是否存在任何已知问题? Update Well证明已创建列,但无法填充任何数据: 处理程序处理失败; 嵌套的异常是java.lang.AbstractMethodE
我的web应用程序使用的是Spring3.1和hibernate4。在这里,我试图为eh缓存,但得到一些错误,这是我的配置,我已经使用:- dispatcher-servlet.xml ehcache.xml 这是依赖性:— 我得到以下错误:-- 严重:在org.springframework.beans.factory中上下文初始化失败。BeanCreationException:创建名为“or