我想在一個類上實作OneToOne注解。我下載了包含JPA資料代碼的jar,但我知道它并不是這樣作業的。我還需要做什么才能讓它作業呢?
uj5u.com熱心網友回復:
如果你使用Maven,那么你應該選擇一個JPA實作,通常是Hibernate,并將其添加到你的依賴項中。
例如:
pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<專案xmlns="http://maven.apache.org/POM/4.0.0"/span>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"?
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.00</modelVersion>
<groupId>com.example</groupId>
<artifactId>jpa-hibernate</artifactId>
<版本>1.0-SNAPSHOT</version>
<dependencies>
<依賴性>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<版本>5.4.21.Final</version>
</dependency>
</dependencies>
</project>
Hibernate帶來了JPA api(persistence-api),你可以根據它的注釋來注釋你的物體類。
例如,通過上面的pom.xml檔案,你可以創建一些物體
。@Entity
@Table(name = "users")
public class User {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "id")
private Long id;
@OneToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "address_id", referencedColumnName = "id")
private Address地址。
}
并且
@Entity
@Table(name = "address")
public class Address {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "id")
private Long id;
@OneToOne(mappedBy = "address")
private User user。
}
并相應地使用注釋。但是請注意,@OneToOne注解應該用在@Entity類上,你不能把它放在一個沒有注解的@Entity類中。
這里沒有顯示的是Hibernate的配置,通常它是在xml中完成的,檔案名為 uj5u.com熱心網友回復: 你需要一個Java服務器和一個關系型資料庫。
我建議使用Apache TomEE(服務器)和HSQLDB(記憶體關系型資料庫)。
這里有一個例子。
https://tomee.apache.org/latest/examples/jpa-hibernate.html
標籤: 上一篇:為什么我的資料在沒有閃光和清除JPA的情況下不能更新?
下一篇:當pageable.size=1時,JPARepositorynativeQuery與pageable,連接表不作業。
persistence.xml,放置在srcmain
的目錄中。
