Questões de Tecnologia da Informação · ProGPe UFSCAR

Tecnologia da InformaçãoMapeamento objeto-relacionalProGPe UFSCAR 2012

UFSCAR

Questão de Tecnologia da Informação

Considere o diagrama de classes UML a seguir:

Figura da questão (imagem do caderno de prova)

Considere também os seguintes trechos de código Java com anotações JPA (obs: assuma que todas as declarações imports estão corretamente definidas, e que as classes têm os atributos e métodos auxiliares, como setters e getters, definidos corretamente, conforme requisitos da especificação JPA para entidades persistentes): @1 public class Sprite implements Serializable { @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id; private int x, y; private String img; @2 private List<Component> comps; // ... setters e getters, // serialVersionUID, etc ... } @Entity public class Control extends Component implements Serializable { private boolean analog; private boolean dualCtrls; // ... setters e getters, // serialVersionUID, etc ... } @3 public abstract class Component implements Serializable { @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id; private String name; private int priority; @4 private Sprite spr; // ... setters e getters, // serialVersionUID, etc ... } @Entity public class Movement extends Component implements Serializable { private double angle private double velocity; // ... setters e getters, // serialVersionUID, etc ... } Considere ainda as seguintes anotações: A1=@Entity A2=@MappedSuperclass A3=@OneToMany A4=@OneToMany(mappedBy="spr") A5=@ManyToOne A6=@ManyToOne(mappedBy="comps") A7=@Column(nullable=false) A8=@JoinColumn(nullable=false) Qual das alternativas a seguir representa a substituição correta dos locais marcados com "@1", "@2", "@3" e "@4" pelas anotações acima, de forma a implementar a persistência conforme a especificação do diagrama de classes apresentado?

Sua resposta

Mais questões de Mapeamento objeto-relacional

Questão de prova oficial, com o gabarito definitivo publicado pela banca. Reproduzida para fins de estudo.