Enunciado
Um analista cria a entidade Processo para um sistema de um tribunal, persistindo processos judiciais em um banco relacional, com número do processo gerado automaticamente, tipo de ação não nulo e relacionamento N: 1 com a entidade Vara (unidade judicial). Nesse contexto, o mapeamento correto da entidade Processo é @Entity para indicar que Processo é uma entidade.
Alternativas
- A)
@Id e @GeneratedValue (strategy = GenerationType.SEQUENCE) para o atributo número do processo, @Column (nullable=true) para tipo de ação, @ManyToOne @JoinColumn (name = "processo_id", nullable false) para o atributo que representaavara.
- B)
@Column (nullable=false) para o atributo que representa o tipo de ação, @ManyToOne (mappedBy = "vara") e @JoinColumn (name = "numero", nullable = false) para o atributo que representa a vara.
- C)
@Id e @GeneratedValue (strategy = GenerationType.IDENTITY) para o atributo número do processo, @Column (nullable=false) para o atributo que representa o tipo de ação, @ManyToOne e @JoinColumn (name = "vara id", nullable = false) para o atributo que representa a vara.
- D)
@Id e @GeneratedValue (type = GenerationType.IDENTITY) para o atributo número do processo, @Column (nullable=false) para tipo de ação, @OneToOne @JoinColumn (name = "vara id", nullable = true) para o atributo que representa a vara.
- E)
@Column (nullable=false) para tipo de ação, @ManyToOne e @JoinColumn (id = "vara_id", nullable false) para o atributo que representaavara.
Gabarito e comentário
Resposta correta: C
A entidade usa @Id e @GeneratedValue para a chave, @Column(nullable=false) para o tipo obrigatório e @ManyToOne com @JoinColumn(nullable=false) para a relação de muitos processos com uma vara.