Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Dreame Aqua10 Ultra Roller, la pulizia di casa con un rullo
Dreame Aqua10 Ultra Roller, la pulizia di casa con un rullo
Il più recente robot per la pulizia domestica di Dreame, modello Aqua10 Ultra Roller, abbina un potente motore di aspirazione della polvere a un sofisticato sistema di lavaggio con rullo integrato. Il tutto governato dalla logica di intelligenza artificiale, per i migliori risultati
Recensione Realme 15 Pro Game Of Thrones: un vero cimelio tech per pochi eletti
Recensione Realme 15 Pro Game Of Thrones: un vero cimelio tech per pochi eletti
Siamo volati fino a Belfast, capitale dell'Irlanda Del Nord, per scoprire il nuovo Realme 15 Pro 5G Game Of Thrones Limited Edition. Una partnership coi fiocchi, quella tra Realme e HBO, un esercizio di stile davvero ben riuscito. Ma vi raccontiamo tutto nel nostro articolo
GIGABYTE GAMING A16, Raptor Lake e RTX 5060 Laptop insieme per giocare al giusto prezzo
GIGABYTE GAMING A16, Raptor Lake e RTX 5060 Laptop insieme per giocare al giusto prezzo
Il Gigabyte Gaming A16 offre un buon equilibrio tra prestazioni e prezzo: con Core i7-13620H e RTX 5060 Laptop garantisce gaming fluido in Full HD/1440p e supporto DLSS 4. Display 165 Hz reattivo, buona autonomia e raffreddamento efficace; peccano però le USB e la qualità cromatica del pannello. Prezzo: circa 1200€.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 13-10-2009, 17:53   #1
x3d0
Member
 
Iscritto dal: Jun 2008
Messaggi: 159
[ORM] Cos'è e quali sono i vantaggi?

Ho sentito parlare di ORM come Doctrine ma non ho men capito cosa siano.

Potreste farmi degli esempi concreti?
Potrebbe essermi utile nella realizzazione di un pannello di amministrazione?
x3d0 è offline   Rispondi citando il messaggio o parte di esso
Old 13-10-2009, 19:25   #2
khelidan1980
Senior Member
 
L'Avatar di khelidan1980
 
Iscritto dal: Mar 2005
Città: Morimondo city
Messaggi: 5491
Quote:
Originariamente inviato da x3d0 Guarda i messaggi
Ho sentito parlare di ORM come Doctrine ma non ho men capito cosa siano.

Potreste farmi degli esempi concreti?
Potrebbe essermi utile nella realizzazione di un pannello di amministrazione?
http://it.wikipedia.org/wiki/Object-relational_mapping
__________________
Khelidan
khelidan1980 è offline   Rispondi citando il messaggio o parte di esso
Old 14-10-2009, 08:37   #3
shinya
Senior Member
 
L'Avatar di shinya
 
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
Sui vantaggi... è una faccenda controversa.
Se vuoi leggere un pò di opinioni eterogenee, se ne è discusso recentemente su reddit:
http://www.reddit.com/r/programming/...ewell_to_orms/
shinya è offline   Rispondi citando il messaggio o parte di esso
Old 14-10-2009, 10:09   #4
zulutown
Senior Member
 
Iscritto dal: Jul 2009
Messaggi: 1161
Quote:
Originariamente inviato da x3d0 Guarda i messaggi
Ho sentito parlare di ORM come Doctrine ma non ho men capito cosa siano.

Potreste farmi degli esempi concreti?
Potrebbe essermi utile nella realizzazione di un pannello di amministrazione?
Su Java EE c'è JPA che è a mio parere fantastico (certo, con ampi margini di miglioramento... ma rispetto a non averlo è un altro mondo)

in poche parole se tu volessi estrarre dal DB un utente e i suoi messaggi, dovresti fare una join tra due tabelle.
Se in JPA volessi far la stessa cosa fai

Codice:
Utente utente = getEntityManager.find(Utente.class, "m.rossi");

System.out.println(utente.getNome + utente.getCognome());
for (Messaggio messaggio : utente.getMessaggi()) {
System.out.println(messaggio.getTitolo() + messaggio.getTesto();
}
In pratica ti fai dare l'oggetto Utente (che è una @Entity gestita via ORM) e poi puoi accedere ai dati usando semplicemente i getter dei bean.

Ovviamente condizione necessaria è sapere usare JPA!
Se non la sai usare o la usi male, ci perdi più tempo, ma se lo sai usare, tutto si fa in un decimo del tempo.
__________________
Web2.0 Guides And Tutorials SLR: Canon 6D ZOOM: Canon EF 24-105mm f/4L IS USM FISSI: - Canon EF 28mm f/1.8 USM - Canon EF 40mm f/2.8 STM - Canon EF 50mm f/1.4 USM - Canon EF 100mm f/2 USM - Canon EF 200mm f/2.8L USM II ALTRO: Canon 430 EX II
zulutown è offline   Rispondi citando il messaggio o parte di esso
Old 14-10-2009, 13:51   #5
shinya
Senior Member
 
L'Avatar di shinya
 
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
Quote:
Originariamente inviato da zulutown Guarda i messaggi
In pratica ti fai dare l'oggetto Utente (che è una @Entity gestita via ORM) e poi puoi accedere ai dati usando semplicemente i getter dei bean.

Ovviamente condizione necessaria è sapere usare JPA!
Se non la sai usare o la usi male, ci perdi più tempo, ma se lo sai usare, tutto si fa in un decimo del tempo.
Con gli esempi stile "select * from table" sono capaci tutti. E' facile dire "che figata 'sti ORM!!" quando non lavori in un ambiente ostile.
Fammi un esempio più complesso e vediamo se ci metti ancora un decimo del tempo... e con complesso intendo anche solo qualcosa come: l'oggetto Utente non si può costruire con una select da una tabella 'Utenti', ma le informazioni sono sparse su più tabelle, magari su database diversi... peccato che tu su uno dei database non possa fare select dalle tabelle perchè "le policy aziendali sono queste" ma si debba reperire i dati da una qualche procedura PL/SQL. Ah dimenticavo, deve funzionare su Websphere, non su Glassfish (troppo facile!), e con i driver JDBC di Oracle (buggati). Ah... non dimenticare della foto dell'utente in quella colonna di tipo BLOB...
shinya è offline   Rispondi citando il messaggio o parte di esso
Old 14-10-2009, 19:31   #6
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Quote:
Originariamente inviato da shinya Guarda i messaggi
Con gli esempi stile "select * from table" sono capaci tutti. E' facile dire "che figata 'sti ORM!!" quando non lavori in un ambiente ostile.
Fammi un esempio più complesso e vediamo se ci metti ancora un decimo del tempo... e con complesso intendo anche solo qualcosa come: l'oggetto Utente non si può costruire con una select da una tabella 'Utenti', ma le informazioni sono sparse su più tabelle, magari su database diversi... peccato che tu su uno dei database non possa fare select dalle tabelle perchè "le policy aziendali sono queste" ma si debba reperire i dati da una qualche procedura PL/SQL. Ah dimenticavo, deve funzionare su Websphere, non su Glassfish (troppo facile!), e con i driver JDBC di Oracle (buggati). Ah... non dimenticare della foto dell'utente in quella colonna di tipo BLOB...
Non arrivo ai livelli di complessità da te descritti , ma almeno per la selezione da più tabelle ci si arriva davvero in attimi. L'entità Utente (per continuare con l'esempio) è appunto un'entità e non rappresenta UNA tabella del db.

Una volta definità l'entità come classe, e mappata (il come dipende a seconda dell'orm) se anche le informazioni di un utente sono sparse per nmila tabelle, non ha alcuna rilevanza.

Un piccolissimo esempio di map su diverse tabelle(utilizzando NHibernate):



Codice:
<class name="Utente" table="anagraficaUtente">
  <id name="ID" column="utenteId" type="Int32">
    <generator class="identity"></generator>
  </id>
  <property name="Cognome" blablala></property>
  <join table="telefoniUtente">
    <key column="utenteId"></key>
    <property name="asdasdasdasd" blalblabla></property>
  </join>
  <join table="quanteSigaretteFumaUtente">
    <key column="utenteId"></key>
    <property name="blbalbalbalbalblab"etc....></property>
  </join>
 etcetera....
Questo solo per utilizzare delle semplici join (in presenza magari di foreign keys fra le tabelle). Si possono ovviamente applicare le varie relazioni uno a uno/molti etc..

La cosa pratica è che l'entità con cui avere a che fare da sorgente, è una sola.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 14-10-2009, 20:18   #7
khelidan1980
Senior Member
 
L'Avatar di khelidan1980
 
Iscritto dal: Mar 2005
Città: Morimondo city
Messaggi: 5491
Quote:
Originariamente inviato da shinya Guarda i messaggi
Con gli esempi stile "select * from table" sono capaci tutti. E' facile dire "che figata 'sti ORM!!" quando non lavori in un ambiente ostile.
Fammi un esempio più complesso e vediamo se ci metti ancora un decimo del tempo... e con complesso intendo anche solo qualcosa come: l'oggetto Utente non si può costruire con una select da una tabella 'Utenti', ma le informazioni sono sparse su più tabelle, magari su database diversi... peccato che tu su uno dei database non possa fare select dalle tabelle perchè "le policy aziendali sono queste" ma si debba reperire i dati da una qualche procedura PL/SQL. Ah dimenticavo, deve funzionare su Websphere, non su Glassfish (troppo facile!), e con i driver JDBC di Oracle (buggati). Ah... non dimenticare della foto dell'utente in quella colonna di tipo BLOB...
ma...lavoriamo nello stesso posto?? o meglio,o la vaga impressione che la maggioranza dei posto sia così....
quando hai a che fare con questa gente bisogna considerarsi furtunati che hanno pensato a fare il mirabolante passo da cobol a java.....

Comunque per utilizzare questi cosi bisogna applicare la "convention over configuration" anche perchè non so voi ma io non ho intenzione di programmare in xml!


P.s: websphere fa proprio schifo,questo è l'esempio principe di quanto conti un nome
__________________
Khelidan

Ultima modifica di khelidan1980 : 14-10-2009 alle 20:24.
khelidan1980 è offline   Rispondi citando il messaggio o parte di esso
Old 14-10-2009, 20:41   #8
gokan
Senior Member
 
L'Avatar di gokan
 
Iscritto dal: Apr 2002
Città: Palermo
Messaggi: 4913
Quote:
Originariamente inviato da shinya Guarda i messaggi
Con gli esempi stile "select * from table" sono capaci tutti. E' facile dire "che figata 'sti ORM!!" quando non lavori in un ambiente ostile.
Fammi un esempio più complesso e vediamo se ci metti ancora un decimo del tempo... e con complesso intendo anche solo qualcosa come: l'oggetto Utente non si può costruire con una select da una tabella 'Utenti', ma le informazioni sono sparse su più tabelle, magari su database diversi... peccato che tu su uno dei database non possa fare select dalle tabelle perchè "le policy aziendali sono queste" ma si debba reperire i dati da una qualche procedura PL/SQL. Ah dimenticavo, deve funzionare su Websphere, non su Glassfish (troppo facile!), e con i driver JDBC di Oracle (buggati). Ah... non dimenticare della foto dell'utente in quella colonna di tipo BLOB...
Quote:
Originariamente inviato da khelidan1980 Guarda i messaggi
ma...lavoriamo nello stesso posto??
Ho l'impressione di si
Dove lavoro io, in banca, all'inizio mi chiedevo pure io perchè non si utilizzasse qualcosa come JPA piuttosto che direttamente con JDBC (o meglio un wrapper di questo)...beh la risposta l'ho trovata strada facendo...considerate che tutto sta sopra database db2 che vengono usati solo per buttare dentro dati, mai visto utilizzo di chiavi primarie o esterne e chi ci lavorava fino ad adesso, non me ne vogliano i programmatori cobol di questo forum, hanno sempre fatto così..vi giuro che sono rimasti sorpresi quando noi javisti abbiamo proposto di usare delle colonne tipo id per mantenere un legame tra due tabelle..azzo manco le join vogliono fare

Tutto questo per dire che non vedrei grossi vantaggi nell'usare un ORM in un contesto simile.
__________________
Sun Certified Java Programmer - Sun Certified Web Component Developer - Sun Certified Business Component Developer
gokan è offline   Rispondi citando il messaggio o parte di esso
Old 15-10-2009, 07:25   #9
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Arrivato in azienda a fine 2004, quando ho fatto vedere che con le foreign key i record delle tabelle slave venivano automaticamente cancellati, hanno fatto una faccia così e mi hanno detto: "ma davvero non serve scrivere codice PHP per cancellare poi tutti i record dell'altra tabella"?

Transazioni, trigger e stored procedure? Fantascienza. Sono stato il primo a usarli, e ancora oggi credo di essere l'unico ad aver fatto uso di questi ultimi due. E siamo a fine 2009...

Quanto agli ORM, concettualmente mi piacciono, ma a conti fatti e nella vita di tutti i giorni ho sviluppato una sorta di wrapper che genera automaticamente codice SQL per le SELECT, INSERT, UPDATE e DELETE (simile a LINQ, per intenderci): di gran lunga più comodo e semplice da usare.

A me servono strumenti agili per lavorare.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 15-10-2009, 09:15   #10
zulutown
Senior Member
 
Iscritto dal: Jul 2009
Messaggi: 1161
Quote:
Originariamente inviato da shinya Guarda i messaggi
Con gli esempi stile "select * from table" sono capaci tutti. E' facile dire "che figata 'sti ORM!!" quando non lavori in un ambiente ostile.
Fammi un esempio più complesso e vediamo se ci metti ancora un decimo del tempo... e con complesso intendo anche solo qualcosa come: l'oggetto Utente non si può costruire con una select da una tabella 'Utenti', ma le informazioni sono sparse su più tabelle, magari su database diversi... peccato che tu su uno dei database non possa fare select dalle tabelle perchè "le policy aziendali sono queste" ma si debba reperire i dati da una qualche procedura PL/SQL. Ah dimenticavo, deve funzionare su Websphere, non su Glassfish (troppo facile!), e con i driver JDBC di Oracle (buggati). Ah... non dimenticare della foto dell'utente in quella colonna di tipo BLOB...
ma che ragionamento è? se ovviamente parti da un DB già esistente fatto con il culo... è logico che non sia banale in ogni caso integrare JPA o altro.
Conosco ho colleghi che in ambiti enterprise tramite wrapping vari riesce a usare le comodità di JPA anche su database legacy.

Comunque se hai un database strutturato decentemente, piuttosto che fare 10 join con SQL, tramite JPA e le relazioni tra oggetti tutto è mille volte più veloce.
__________________
Web2.0 Guides And Tutorials SLR: Canon 6D ZOOM: Canon EF 24-105mm f/4L IS USM FISSI: - Canon EF 28mm f/1.8 USM - Canon EF 40mm f/2.8 STM - Canon EF 50mm f/1.4 USM - Canon EF 100mm f/2 USM - Canon EF 200mm f/2.8L USM II ALTRO: Canon 430 EX II
zulutown è offline   Rispondi citando il messaggio o parte di esso
Old 15-10-2009, 10:29   #11
tomminno
Senior Member
 
Iscritto dal: Oct 2005
Messaggi: 3306
Quote:
Originariamente inviato da zulutown Guarda i messaggi
Comunque se hai un database strutturato decentemente, piuttosto che fare 10 join con SQL, tramite JPA e le relazioni tra oggetti tutto è mille volte più veloce.
Scusa ma se parliamo di comodità può essere che gli ORM battano tutto il resto, ma se parliamo di velocità assolutamente no.
Una query SQL è molto più veloce di qualunque astrazione software tu ci possa mettere sopra, semplicemente perchè lo strumento automatico non genererà mai una query ottimizzata come potrebbe fare una mente umana.

Più o meno lo stesso discorso sulla velocità di esecuzione/velocità di sviluppo tra Assembly-C-Linguaggi Managed
tomminno è offline   Rispondi citando il messaggio o parte di esso
Old 15-10-2009, 10:46   #12
zulutown
Senior Member
 
Iscritto dal: Jul 2009
Messaggi: 1161
Quote:
Originariamente inviato da tomminno Guarda i messaggi
Scusa ma se parliamo di comodità può essere che gli ORM battano tutto il resto, ma se parliamo di velocità assolutamente no.
Una query SQL è molto più veloce di qualunque astrazione software tu ci possa mettere sopra, semplicemente perchè lo strumento automatico non genererà mai una query ottimizzata come potrebbe fare una mente umana.

Più o meno lo stesso discorso sulla velocità di esecuzione/velocità di sviluppo tra Assembly-C-Linguaggi Managed
ovviamente parlo di velocità in termini di sviluppo.
costa molto meno comprare hardware più potente che pagare il doppio di ore gli sviluppatori
PS: e anche sul discorso velocità del prodotto non è sempre detto, dipende da come sanno scrivere bene SQL i programmatori.
__________________
Web2.0 Guides And Tutorials SLR: Canon 6D ZOOM: Canon EF 24-105mm f/4L IS USM FISSI: - Canon EF 28mm f/1.8 USM - Canon EF 40mm f/2.8 STM - Canon EF 50mm f/1.4 USM - Canon EF 100mm f/2 USM - Canon EF 200mm f/2.8L USM II ALTRO: Canon 430 EX II
zulutown è offline   Rispondi citando il messaggio o parte di esso
Old 15-10-2009, 10:48   #13
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da tomminno Guarda i messaggi
Più o meno lo stesso discorso sulla velocità di esecuzione/velocità di sviluppo tra Assembly-C-Linguaggi Managed
Quoto solo qesto pezzo: il tuo ragionamento magari ha senso per ORM versus SQL scritto a manina, viceversa è tutto fuori che scontato il fatto che a runtime il compilato di codici C o C++ esegua più velocemente del just-in-time-compilato dei linguaggi managed.

Cioè il paragone tra "query ORM versus query SQL scritte a mano" e "codice ottimizzato a mano assembly/C/C++ versus linguaggi managed" è sbagliato.

E il motivo è che la complessità delle ottimizzazioni per sua natura non ha a che fare solo con aspetti statici del codice, valutabili quindi in maniera esaustiva da una mente umana, ma comprende aspetti dinamici, conoscibili solo a runtime, e questi aspetti possono essere presi in considerazione solo da appositi strumenti che esaminano le condizioni di runtime ed eseguono al volo eventuali ottimizzazioni.
__________________

As long as you are basically literate in programming, you should be able to express any logical relationship you understand.
If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it.
(Chris Crawford)
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 15-10-2009, 10:50   #14
zulutown
Senior Member
 
Iscritto dal: Jul 2009
Messaggi: 1161
Quote:
Originariamente inviato da khelidan1980 Guarda i messaggi

Comunque per utilizzare questi cosi bisogna applicare la "convention over configuration" anche perchè non so voi ma io non ho intenzione di programmare in xml!
con JPA non si usa XML si usano le annotation.
__________________
Web2.0 Guides And Tutorials SLR: Canon 6D ZOOM: Canon EF 24-105mm f/4L IS USM FISSI: - Canon EF 28mm f/1.8 USM - Canon EF 40mm f/2.8 STM - Canon EF 50mm f/1.4 USM - Canon EF 100mm f/2 USM - Canon EF 200mm f/2.8L USM II ALTRO: Canon 430 EX II
zulutown è offline   Rispondi citando il messaggio o parte di esso
Old 15-10-2009, 11:47   #15
khelidan1980
Senior Member
 
L'Avatar di khelidan1980
 
Iscritto dal: Mar 2005
Città: Morimondo city
Messaggi: 5491
Quote:
Originariamente inviato da zulutown Guarda i messaggi
con JPA non si usa XML si usano le annotation.
bello sinceramente non lo mai usato JPA,io ovviamente mi riferivo a hibernate & company e più in generale al 99% dei framework java,spring struts ecc...per i mei gusti sono troppo xml-centrici...
__________________
Khelidan
khelidan1980 è offline   Rispondi citando il messaggio o parte di esso
Old 15-10-2009, 13:20   #16
tomminno
Senior Member
 
Iscritto dal: Oct 2005
Messaggi: 3306
Quote:
Originariamente inviato da banryu79 Guarda i messaggi
Quoto solo qesto pezzo: il tuo ragionamento magari ha senso per ORM versus SQL scritto a manina, viceversa è tutto fuori che scontato il fatto che a runtime il compilato di codici C o C++ esegua più velocemente del just-in-time-compilato dei linguaggi managed.
Che dire per la mia esperienza il codice se portato da C# (o un linguaggio gestito) a C++ è sempre risultato ben più veloce, o per lo meno a parità di funzionalità il tempo di elaborazione non mi ha mai smentito.
L'ennesima riprova l'ho avuta di recente quando tra 2 applicativi uno Java e uno C++ (o meglio in C con le classi, dato che del C++ usava solo la OO) sulla stessa macchina per distribuire lo stesso filmato il primo impiegava la cpu al 90% l'altro neanche si faceva sentire con un'occupazione di ram ridicola (11Mb). Con il secondo software sono arrivato a tirare il collo all'applicativo (e alla lan gigabit) ben prima di saturare minimamente la macchina, con il secondo la macchina era già che morta con un numero irrisorio di client.

E in ogni caso c'è sempre il costo di questi ottimizzatori a runtime (che non ho mai capito fino a che punto e come riescano ad ottimizzare codice reale).

In ogni caso è innegabile che a livello di velocità se devo lavorare con istruzioni SIMD e scrivo una routine assembly il codice nel complesso migliora in prestazioni che non a caso è quello che viene fatto in tutte le librerie codec AV per esempio.

Quote:
Cioè il paragone tra "query ORM versus query SQL scritte a mano" e "codice ottimizzato a mano assembly/C/C++ versus linguaggi managed" è sbagliato.
Chiaramente il rapporto Orm-SQL/Assembly-C-Resto del mondo è analogo solo parzialmente perchè Sql è un'interfaccia verso un sistema esterno al programma, un orm fornisce tante funzionalità in più che sono estranee a sql e riguardano solo lo sviluppo. I linguaggi invece sono praticamente paritetici dal punto di vista delle funzionalità.

Quote:
E il motivo è che la complessità delle ottimizzazioni per sua natura non ha a che fare solo con aspetti statici del codice, valutabili quindi in maniera esaustiva da una mente umana, ma comprende aspetti dinamici, conoscibili solo a runtime, e questi aspetti possono essere presi in considerazione solo da appositi strumenti che esaminano le condizioni di runtime ed eseguono al volo eventuali ottimizzazioni.
Questo è vero per il codice e meno per l'sql, che dopotutto viene ottimizzato dal server, dopotutto il compito del programma dovrebbe essere quello di scrivere query che sono massimamente ottimizzabili dal server.

Comunque anche dove lavoro io per il momento usiamo un tool che mappa le tabelle in classi e crea metodi per l'interazione di queste con il database, ma abbiamo ancora i DAL fatti a mano, anche perchè se c'è da fare una join al 99% si usano le viste (altra ottimizzazione, una vista è più efficiente di una query con join)
tomminno è offline   Rispondi citando il messaggio o parte di esso
Old 15-10-2009, 13:43   #17
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
@tomminno: ti ho risposto via pvt per evitare l'OT.Ciao.
__________________

As long as you are basically literate in programming, you should be able to express any logical relationship you understand.
If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it.
(Chris Crawford)
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 15-10-2009, 14:41   #18
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Quote:
Originariamente inviato da khelidan1980 Guarda i messaggi
bello sinceramente non lo mai usato JPA,io ovviamente mi riferivo a hibernate & company e più in generale al 99% dei framework java,spring struts ecc...per i mei gusti sono troppo xml-centrici...
Anche per .Net puoi evitare di usare gli xml utilizzando Fluent NHibernate (se utilizzi Nhibernate ovviamente... )
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 15-10-2009, 17:09   #19
tomminno
Senior Member
 
Iscritto dal: Oct 2005
Messaggi: 3306
Quote:
Originariamente inviato da RaouL_BennetH Guarda i messaggi
Anche per .Net puoi evitare di usare gli xml utilizzando Fluent NHibernate (se utilizzi Nhibernate ovviamente... )
Oddio NHibernate è una piaga quanto a prestazioni.
Tanto vale usare l'Entity Framework della Microsoft: integrato in Visual Studio e molto più veloce.
tomminno è offline   Rispondi citando il messaggio o parte di esso
Old 19-10-2009, 21:06   #20
khelidan1980
Senior Member
 
L'Avatar di khelidan1980
 
Iscritto dal: Mar 2005
Città: Morimondo city
Messaggi: 5491
Quote:
Originariamente inviato da zulutown Guarda i messaggi
con JPA non si usa XML si usano le annotation.
perdona la mia sbadataggine ho connesso ora che jpa erano gli ejb 3.0

E te credo che non si usano più gli xml,dopo aver sputato sangue letteralmente con le vecchie versioni di ejb!!!!
__________________
Khelidan
khelidan1980 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Dreame Aqua10 Ultra Roller, la pulizia di casa con un rullo Dreame Aqua10 Ultra Roller, la pulizia di casa c...
Recensione Realme 15 Pro Game Of Thrones: un vero cimelio tech per pochi eletti Recensione Realme 15 Pro Game Of Thrones: un ver...
GIGABYTE GAMING A16, Raptor Lake e RTX 5060 Laptop insieme per giocare al giusto prezzo GIGABYTE GAMING A16, Raptor Lake e RTX 5060 Lapt...
iPhone 17 Pro: più di uno smartphone. È uno studio di produzione in formato tascabile iPhone 17 Pro: più di uno smartphone. &Eg...
Intel Panther Lake: i processori per i notebook del 2026 Intel Panther Lake: i processori per i notebook ...
La gamma Mac riceverà tante novit...
DDR5 supera i 13.000 MT/s, stavolta uffi...
Il nuovo iPhone con display pieghevole p...
ASUS ProArt PA32KCX: ecco a voi il primo...
DAZN ci riprova: piano Full a meno di 20...
Nuovi prezzi, più bassi: scendono...
PC Desktop HP Victus con RTX 4060 e Ryze...
Giù di altri 10€: solo 939€ per M...
Offerte Amazon da non credere: sconti fo...
Windows 11 scivola sugli aggiornamenti d...
Razer Kiyo V2: la nuova webcam 4K con AI...
ASUS ROG NUC 9: i mini PC (ex) Intel, ad...
Streaming illegale, il ministro dello Sp...
Microsoft avrebbe affidato a Intel la pr...
'Un momento storico': Jensen Huang annun...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 14:23.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v