FAM - Generació del model de dades
1. Prerequisits
- Tenir instal·lat entorn corporatiu
- Tenir projecte backoffice amb tots els pasos fets (veure FWK2012 - Crear nou projecte tipus FAM)
2. Creació/configuració connexió eclipse
Nota: La generació de entitats es fa a partir de la base de dades. Eclipse necessita tenir definida una connexió a l’esquema.
Nota: Tenir present la base de dades contra la que es vol fer el mapeig (recomenat SIT).
Entrar a la perspectiva de database development
Comprovar si existeix la connexió i contra que esquema, adaptar-lo al projecte.
3. Generació entitats
Botó dret al projecte -> JPA Tools -> Generate Entities from Tables
A la pantalla que s’obre seleccionar la connexió, l’esquema i les taules que es vulguin mapejar (per exemple, totes llevat la PLAN_TABLE) i fer next
Surt una pantalla on s’indiquen les associacions que es mapejaran.
Dependrà de cada projecte i de cada relació però la configuració desitjable és mapejar les relacions pares però no les filles. Si é vol fer un manteniment mestre detall on els fills estiguin en memòria, llavors s’han de carregar les relacions pares i filles.
La següent captura mostra la configuració de la primera relació. Es mapeja la relació pare (Generate this association) però no la relació fills (generate a reference to a collection...)
Nota: És important revisar que estiguin totes les relacions i configurar-les una per una abans de continuar. Estalviarà molta feina manual.
Al següent pas s’ha d’indicar la seqüència oracle del projecte per generar els ids.
També s’ha de indicar el package per posar les entities (ha de ser el configurat en crear el projecte) car.diba.jee.[CodiDelProjecte].model.entities
A la última pantalla es poden configurar els mapeigs a nivell de entitat canviant el tipus de dada o el nom de les propietats.
No s’haurien de fer canvis en aquesta pantalla.
Fer finish i esperar que termini
4. Test
- Revisar que s’han creat les entities al package indicat.
- Revisar que al persistence.xml s’han referenciat aquestes entities.
5. Ajustos a les entities I
- Sequence bug: S’ha d’afegir a les entitats la propietat allocationSize=1 veure exemple al fam.
- Datas: Els camp de data s’han de configurar per que siguin TimeStamp si tenen hora.@Temporal(TemporalType.DATE) @Temporal(TemporalType.TIMESTAMP)
- Tipus: S’ha de configurar el mapeig per tipus, els checboxes a booleans, els BigDecimals a Longs o Doubles...
6. Ajustos a les entities II
- Formatejar i documentar les entitats
- Interfícies i implementació de mètodes
7. Test
- desplegar i arrencar una versió de l’aplicació. En entrar no surt res nou però no ha de petar.