Mapeamentos JPA
A camada de persistência do BIS é atualmente desenvolvida com base no JPA e uma estrutura própria do BISCore que simplifica a criação de DAOs. A implementação JPA utilizada atualmente é a nativa do Glassfish: a EclipseLink.
Esta página tem o objetivo de exemplificar os diferentes tipos de mapeamentos entre objetos e tipos diferentes de campos para servir como guia rápido de consulta para os desenvolvedores.
Mapeamento de Atributos
Mapeamento Entre Objetos
![]() |
|
OneToMany - carregado em um Map
Imagine o objeto SchedulerVO, este tem uma coleção de SchedulerPropertyVO. Como mostram as tabelas abaixo:

![]() |
SchedulerVO
@OneToMany(cascade = CascadeType.ALL, orphanRemoval = true, mappedBy = "schedulervo", fetch = FetchType.EAGER)
@MapKey(name = "name")
private Map<String, SchedulerPropertyVO> properties = new HashMap<String, SchedulerPropertyVO>();
|
![]() |
SchedulerPropertyVO
@ManyToOne(cascade = CascadeType.REFRESH, optional = false, fetch = FetchType.LAZY)
@JoinColumn(name = "idcore_scheduler")
public SchedulerVO schedulervo = null;
|
OneToMany - carregado em uma List
Imagine o objeto SchedulerVO, este tem uma coleção de SchedulerPropertyVO. Como mostram as tabelas abaixo:

![]() |
SchedulerVO
@OneToMany(cascade = CascadeType.ALL, orphanRemoval = true, mappedBy = "schedulervo", fetch = FetchType.EAGER)
private List<SchedulerPropertyVO> properties = new ArrayList<SchedulerPropertyVO>();
|
![]() |
SchedulerPropertyVO
@ManyToOne(cascade = CascadeType.REFRESH, optional = false, fetch = FetchType.LAZY)
@JoinColumn(name = "idcore_scheduler")
public SchedulerVO schedulervo = null;
|