Class B is easy:
import java.io.Serializable;
import javax.persistence.*;
/**
* Entity implementation class for Entity: B
*
*/
@Entity
public class B implements Serializable {
public B() {
super();
}
@GeneratedValue(strategy = GenerationType.AUTO)
@Id
private int id;
private String name;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
Class A is easy too, but it contains two B, one is named 'b1', the other 'b2':
import java.io.Serializable;
import javax.persistence.*;
import static javax.persistence.CascadeType.PERSIST;
import static javax.persistence.CascadeType.REMOVE;
/**
* Entity implementation class for Entity: A
*
*/
@Entity
public class A implements Serializable {
public A() {
super();
}
@GeneratedValue(strategy = GenerationType.AUTO)
@Id
private int id;
@OneToOne(cascade = { PERSIST, REMOVE })
private B b1;
@OneToOne(cascade = { PERSIST, REMOVE })
private B b2;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public B getB1() {
return b1;
}
public void setB1(B b1) {
this.b1 = b1;
}
public B getB2() {
return b2;
}
public void setB2(B b2) {
this.b2 = b2;
}
}
It is nothing serious, A knows which is b1, and which is b2, in the database it is saved like this(the table A):
ID B1_ID B2_ID
Try it:
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
B b1 = new B();
b1.setName("b1");
B b2 = new B();
b2.setName("b2");
A a = new A();
a.setB1(b1);
a.setB2(b2);
OperateData.create(a);
a = (A) OperateData.find(a);
System.out.println("b1:" + a.getB1().getName());
System.out.println("b2:" + a.getB2().getName());
}
}
You can see in table A:
ID B1_ID B2_ID
1 1 2
That's great, maybe we should try the 'OneToMany' or 'ManyToMany'....
----------------------
Don't set b2's value, what will happen ? If you have read the 'A-->List<B> 有两个..How JPA do ?', you may think there will be a error message printed.
But, there is nothing, yes, in the table A, you can save an 'A' that have the b1's value but don't have b2's. Think about it.
分享到:
相关推荐
赠送jar包:hibernate-jpa-2.1-api-1.0.2.Final.jar; 赠送原API文档:hibernate-jpa-2.1-api-1.0.2.Final-javadoc.jar; 赠送源代码:hibernate-jpa-2.1-api-1.0.2.Final-sources.jar; 赠送Maven依赖信息文件:...
赠送jar包:hibernate-jpa-2.1-api-1.0.2.Final.jar; 赠送原API文档:hibernate-jpa-2.1-api-1.0.2.Final-javadoc.jar; 赠送源代码:hibernate-jpa-2.1-api-1.0.2.Final-sources.jar; 赠送Maven依赖信息文件:...
<spring-data-jpa.version>1.6.2.RELEASE</spring-data-jpa.version> <hibernate-entitymanager.version>4.1.0.Final</hibernate-entitymanager.version> <hibernate-jpa.version>1.0.1.Final</hibernate-jpa....
hibernate-jpa-2.0-api-1.0.1.Final-sources.jar hibernate jpa 源代码
`hibernate-jpa-2.1-api-1.0.0.final.jar`是Hibernate对JPA 2.1规范的实现库,它使得开发者能够使用Hibernate的高效功能同时遵循JPA规范。 **1. Hibernate与JPA的关系** Hibernate最初作为一个独立的ORM框架,后来...
hibernate-jpa-2.0-api-1.0.1.Final.jar
hibernate-jpa-2.1-api-1.0.0.final-sources.jar 源码 hibernate-jpa-2.1-api-1.0.0.final-sources.jar 源码
hibernate-jpa-2.1-api-1.0.0.Final.jar官方下载,请放心使用
这两个模块的 jar 文件,`spring-data-commons-1.7.2.RELEASE.jar` 和 `spring-data-jpa-1.5.2.RELEASE.jar`,包含了它们各自的功能实现和依赖。在实际项目中,将这些 jar 文件添加到类路径,就可以利用 Spring Data...
赠送jar包:spring-data-jpa-2.0.9.RELEASE.jar; 赠送原API文档:spring-data-jpa-2.0.9.RELEASE-javadoc.jar; 赠送源代码:spring-data-jpa-2.0.9.RELEASE-sources.jar; 赠送Maven依赖信息文件:spring-data-jpa...
spring-data-simpledb.zip,根据spring数据接口提供以pojo为中心的模型以与amazon simpledb交互,非关系数据存储根据spring数据接口提供以pojo为中心的模型以与amazonsimpledb(非关系数据存储)交互
JPA是Java EE和Java SE平台中的一个重要组件,它提供了一种标准的方式来管理和持久化应用程序的Java对象到关系数据库。JPA 2.2版本带来了许多增强功能和改进,包括对Java 8的支持、新查询语言JPQL的扩展以及对多租户...
而JPA(Java Persistence API)是Java平台上的一个标准,用于管理关系数据库中的数据。在本篇文章中,我们将深入探讨如何配置Spring、Spring MVC以及JPA,以便在实际项目中进行有效集成。 首先,让我们从Spring的...
java运行依赖jar包
赠送jar包:spring-data-jpa-2.0.9.RELEASE.jar; 赠送原API文档:spring-data-jpa-2.0.9.RELEASE-javadoc.jar; 赠送源代码:spring-data-jpa-2.0.9.RELEASE-sources.jar; 赠送Maven依赖信息文件:spring-data-jpa...
Spring Data JPA 是 Spring 框架的一个模块,它简化了数据库访问层(DAO)的开发,通过提供自动化的 Repository 实现,使得开发者无需编写大量的 CRUD(创建、读取、更新、删除)代码。Spring Data JPA 基于 Java ...
本篇文章将重点围绕“hibernate-jpa-2.1-api-1.0.0.final-sources.jar.zip”这一压缩包,深入解析Hibernate对JPA 2.1 API的实现,以期帮助读者深入理解其内部机制。 JPA(Java Persistence API)是Java平台上的一个...
drools-persistence-jpa-5.2.0.Final.jar drools
jar包,官方版本,自测可用