Sie schreiben den Source Code für die Benutzeroberfläche nur einmal und die Applikation kann als Desktop, Web oder Mobile Applikation gestartet werden.
Swing Applet, Webstart oder Desktop
Vaadin HTML5/Ajax
iOS und Android Native App für Smartphone, Tablet
Schnell & einfach entwickeln
GUI Code:
private void initializeUI() throws Exception {
UITable table = new UITable();
table.setDataBook(rdbContacts);//bind to UI model
add(table, UIBorderLayout.CENTER);
setTitle("Contacts");
setSize(new UIDimension(600, 500));
}
private void initializeModel() throws Throwable {
RemoteDataBook rdbContacts = new RemoteDataBook();
rdbContacts.setDataSource(getDatasource()); // bind to DAO „contacts“
rdbContacts.setName("contacts");
rdbContacts.open();
}
Server Code:
public IStorage getContacts() throws Exception {
DBStorage dbsContacts = (DBStorage)get("contacts");
if (dbsContacts == null) {
dbsContacts = new DBStorage(); // Automatic DAO
dbsContacts.setDBAccess(getDBAccess()); dbsContacts.setWritebackTable("CONTACTS");
dbsContacts.open();
put("contacts", dbsContacts);
}
return dbsContacts; }
Mehr Code brauchen Sie nicht!
Sie schreiben mit wenigen Zeilen Code eine Applikation zum Verwalten Ihrer Kontakte.
initializeUI() Eine UITable instanzieren, mit dem Model binden und zu einem Screen hinzufügen.
initializeModel() Model für Kontakte (Contacts) instanzieren, an den Server und DAO "contacts" binden.
getContacts() DAO "contacts" instanzieren, mit Datenbank und Tabelle "CONTACTS" initialisieren.
Wie funktioniert das?
Die DAO Klasse DBStorage von JVx analysiert das Datenmodell zur Tabelle "CONTACTS". Damit werden alle Datentypen zu allen Spalten ermittelt, sowie alle Fremdschlüssel zu Stammdaten Tabellen. Diese Metainformationen aus der Persistence werden zum Client Model übertragen.
Das dynamische Client Model, für alle Daten gebundenen GUI Controls, übernimmt die Persistence Metadaten. Daher erhalten Eingabefelder den Datentyp, Längen laut Datenbank. Auswahllisten werden automatisch Aufgrund von Fremdschlüssel zu Stammdatentabellen erstellt, usw.
Dadurch ist kein weiterer Source Code notwendig. "Covention over Configuration"
Jegliche Abweichung vom Standardverhalten kann natürlich entsprechend codiert werden.
Full Stack - Alle Features
Allgemeine Features
Open Source Framework Apache 2.0 Lizenz
Full Stack Framework
Vollständiger Applikationsstack von GUI bis Persistence
Simple APIs, kurze Einarbeitungszeit
Gut dokumentiert
Einfach zu erweitern
Datenbankunabhängigkeit Oracle, DB2, MS SQL, MySql, PostgreSql, HSQLDB, uvm.