Oracle
 sql >> база данни >  >> RDS >> Oracle

Как да се посочи идентификаторът на родител в идентификатора на дете с JPA/Hibernate?

Съответствията трябва да бъдат както по-долу:

@Entity
@Table(name = "MY_SCHEMA.MY_TABLE_A")
@Component
public class FirstClass implements Serializable {

    @Id
    @SequenceGenerator(name = "MY_SEQ", sequenceName = "MY_SCHEMA.MY_SEQ", allocationSize = 1)
    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "MY_SEQ")
    @Column(name = "MY_ID")
    private Long myId;

    @OneToOne(mappedBy = "firstClass", cascade = CascadeType.ALL)
    private SecondClass secondClass;
}

@Entity
@Table(name = "MY_SCHEMA.MY_TABLE_B")
@Component
public class SecondClass implements Serializable {

    @Id
    @JoinColumn(name = "MY_ID", referencedColumnName = "MY_ID")
    @OneToOne
    private FirstClass firstClass;
}

При зададена опция Cascade тогава ще трябва само да направите повикване, за да запазите firstClass:свързаният secondClass ще бъде запазен автоматично - ако приемем, че сте задали двете страни на релацията във вашия модел в паметта, т.е.

firstClass.setSecondClass(secondClass);
secondClass.setFirstClass(firstClass);


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да съхранявате само време; не дата и час?

  2. Попълване на елемент от дърво с група записи във форми на Oracle

  3. Как мога да се отърва от нежелани празни XML тагове?

  4. Имам вмъкване в израз, но има грешка със запетая и просто не мога да я поправя

  5. ODP.NET изисква ли инсталация на Oracle Client