morellik ha scritto:
Il primo tipo è client server con database annesso quindi un client che fa richiesta ad un servizio, (magari SOAP?), il servizio stesso e un framework che mi astragga dal database (mi pare di capire che EJB è l'equivalente del Microsoft Entity Framework, o sbaglio?).
No, in Java-EE e' il JPA.
E' peggio di cosi
Sono tutti ORM (Object Relational Mapping). Le API standard di Java sono
alla base c'e JDBC
Quindi ci sono 2 API
JDO: Java data object (la piu' vecchia)
JPA: java Persistent Architecture (la piu' recente)
Poi ci sono gli EJB, ma sono pesanti e complicati
Poi ci sono le miriadi di implementazioni piu' o meno buone di JDo, JPA, EJB e ORM in generale, tra cui la piu' famosa e' sicuramente Hibernate.
Io ho usato l'allora JPOX, ora Kodo, implementazione di JDO (ed ora anche di JPA) quando ancora era OpenSource e l'avevo esteso per gestire le colonne XML e fare query usando XPath. Ottima libreria.
Anche gli ORM sono belli complicati: come al solito, attenzione al
markkketttting.
Sposti le rogne dall'SQL alla scrittura dei file di configurazione e all'impossibilita' di fare query ottimizate. Magari ti serve il valore di un'unica colonna, ma lui comunque ti estrare l'intero record perche' deve creare in memoria l'oggetto Java.