У меня следующая проблема: я хочу просто объединить таблицы Markets (основной) и Telephones, но я сталкиваюсь с некоторыми проблемами, когда делаю это с аннотациями.
Я просто хочу использовать Comercio.id в качестве соответствующего внешнего ключа от Telefone.fk_id, но он его не распознает. Я также хотел бы спросить, нужно ли создавать интерфейс репозитория для обоих классов.
РЕДАКТИРОВАТЬ. Кроме того, как бы выглядел запрос POST для такого примера?
Comercio. java
@Entity
@Table(name = "comercio")
public class Comercio {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String nome;
private String cnpj;
private String endereco;
@OneToMany(targetEntity = Telefone.class , mappedBy = "comercio", fetch = FetchType.LAZY)
private List<Telefone> telefones;
private String email;
Телефон. java
@Entity
@Table(name = "telefone")
public class Telefone {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long telefone_id;
@ManyToOne
@JoinColumn(name="fk_id", referencedColumnName = "id")
private Comercio comercio;
private String telefone;
Ответ I get:
{
"nome" : "Americanas",
"cnpj" : "000",
"endereco" : "SQN 112",
"telefones" : [ ],
"email" : "contato@americanas.com",
"comercio_id" : 1
}
Консоль:
Hibernate: select comercio0_.id as id1_0_, comercio0_.cnpj as cnpj2_0_, comercio0_.email as email3_0_, comercio0_.endereco as endereco4_0_, comercio0_.nome as nome5_0_ from comercio comercio0_
Hibernate: select telefones0_.fk_id as fk_id3_1_0_, telefones0_.telefone_id as telefone1_1_0_, telefones0_.telefone_id as telefone1_1_1_, telefones0_.fk_id as fk_id3_1_1_, telefones0_.telefone as telefone2_1_1_ from telefone telefones0_ where telefones0_.fk_id=**?**
Оцените любую помощь.