2. About us
? Speaker
? Patrik Suzzi, www.asegno.com
Eclipse Platform Committer,
Consultant Software Engineer
? Audience
? Are you familiar with JAXB, JPA,
Eclipse E4 and WindowBuilder?
3. IDE and Tools
? Eclipse IDE for RCP and RAP development (Oxygen RC3)
+ Nebula Widgets (to use XY Graph)
http://download.eclipse.org/nebula/releases/latest
+ WindowBuilder (if not already installed in Eclipse IDE for RCP..)
http://download.eclipse.org/windowbuilder/WB/integration/4.7/
? Libraries
+ EclipseLink (JPA and JAXB)
https://www.eclipse.org/eclipselink/downloads/
4. Steps to build a prototype (Banking)
? Data Model
? JAXB and JPA Annotations
? Test persistence
? E4 Application
? Simple UI
? Complex UI
? Working Example
10. DB Persistence
? Persist and Load with JPA
public static void persistDB(Bank bank){
EntityManager em = instance().getEntityManager();
em.getTransaction().begin();
em.merge(bank);
em.flush();
em.getTransaction().commit();
}
public static Bank loadDB() throws JAXBException {
EntityManager em = instance().getEntityManager();
em.getTransaction().begin();
TypedQuery<Bank> query = em.createQuery(SELECT_BANK, Bank.class);
Bank bank = query.getSingleResult();
return bank;
}
Usage: TestPersistence.java
18. Concluding
? Rapid prototype, fully customizable, persist your data
? Source: https://github.com/psuzzi/eclipsecon.git
? Project: ecf2017/com.asegno.e4.banking
? Branch demo/step1, model and persistence tests
? Branch demo/step2, E4 App with Customers perspective
? Branch demo/step3, E4 App with Accounts perspective
? Branch demo/step4, Final prototype
? Please, get in touch if you need more information.
psuzzi[at]gmail[dot]com
www.asegno.com