2010-01-21 3 views
5

Recentemente ho ricevuto una risposta da una società di server che chiedeva se stiamo utilizzando un ORM nella nostra applicazione che fa tutto il lavoro di setacciamento lato applicazione (come Rails) o se scriviamo risme di SQL, funzioni incorporate ecc che renderebbero il database il server esegue l'elaborazione per te.Che cos'è un ORM in un'applicazione Web?

Qualcuno può spiegare cosa si intende con questo. La nostra applicazione web è composta da script PHP con funzioni che effettuano chiamate al database per recuperare righe di dati, quindi PHP elabora queste righe in base alle necessità per restituire all'utente i risultati.

grazie

+10

Google è stato danneggiato? Quando hai cercato su Google, cosa hai visto? Avete domande specifiche sui collegamenti forniti da una ricerca su Google? –

+1

Sono d'accordo sull'uso di google per questo. Usa questo link: http://www.google.com/search?hl=it&q=orm&aq=f&aql=&aqi=g10&oq= – Chris

+4

Grazie a tutti coloro che hanno lasciato risposte utili, trovo molto più gratificante interagire con persone reali che google, i migliori auguri. – undefined

risposta

5

In pratica, le tabelle del database vengono visualizzate come oggetti sul lato PHP del sito in modo da poter facilmente manipolare i dati.

Per esempio, se si dispone di una tabella utente, ricevendo il nome di questo utente è facile come fare: $myUser->getName();

l'aggiunta di un nuovo utente nel database potrebbe essere:

$myUser = new User(); 
$myUser->setName('John Doe'); 
$myUser->save(); 

Naturalmente questo è pseudo codice (in realtà codice PHP Symfony/Doctrine), ma è un semplice esempio in modo da ottenere il punto.

3

È un mapping relazionale di oggetti. Vedi il link a wikipedia qui sotto.

http://en.wikipedia.org/wiki/Object-relational_mapping

+0

Di solito è un "mapping", non un "mapper". Nota il reindirizzamento di Wikipedia. –

+0

Aggiornato per riflettere il commento di Bears sopra riportato dal mappatore alla mappatura. –

0

ORM è Object Relational Mapper. che associa gli oggetti java alle tabelle del database e consente di eseguire alcune transazioni di database approfondendo il codice. EX degli strumenti ORM sono come Hibernate, Ibatis ..

0

ORM viene utilizzato per il mapping degli oggetti del database agli oggetti dell'applicazione.

In un'applicazione semplice che utilizza ORM, è necessario disporre di funzioni che ottiene/imposta dati da/su DB devono restituire oggetti/oggetti applicazione appropriati.

1

Un ORM è un'astrazione che dovrebbe semplificare il lavoro con un database relazionale in un linguaggio orientato agli oggetti. È fondamentalmente un insieme di classi e metodi che ti permettono di creare, recuperare e aggiornare i dati senza usare direttamente SQL.

Per esempio invece di scrivere $ result = mysql_query ('select * from sandwiches dove color =' green 'e size =' 2 ');

è possibile utilizzare un'interfaccia come $ result = $ sandwiches-> get ('color' => 'green', => 'size' => '2');

e l'ORM trasforma questo in SQL ed esegue la query, avendo cura di join, ecc

popolare PHP ORM sono Doctrine e Propel

Se non si sa se si sta utilizzando uno , che è piuttosto improbabile che tu sia!

0

ORM è un articolo Wikipedia sulla mappatura relazionale dell'oggetto.

0

L'Object Relational Mapping è un modo semplice per mappare gli oggetti Database (tabelle, viste ...) in classi/oggetti in OOPL. Hibernate e NHibernate sono alcuni esempi di ORM.fa tutto il noioso compito di gestire e mappare i set di risultati ..