ColdFusion ORM gestioneaza persistenta prin obiecte, care sunt, de asemenea, numite entitati in contextul ORM. In ColdFusion ORM, persistenta este gestionata prin CFC-uri si proprietatile acestora. Fiecare CFC persistent intr-o aplicatie ColdFusion se mapeaza la un tabel din baza de date. Fiecare proprietate din CFC persistent se mapeaza la o coloana din tabel.

Urmatorul exemplu explica aceste concepte prin crearea unei aplicatii simple, care va va permite sa incepeti cu ColdFusion ORM. Exemplul foloseste sursa de date cfartgallery livrata cu ColdFusion. Sursa de date cfartgallery contine artisti si tabele de arta. Artistii au o relatie unu-la-multi cu masa de arta.

Pasul 1:

Specificati setarile ORM in fisierul Application.cfc. 

Setarile minime necesare sunt mentionate in urmatorul fragment de cod exemplu:

Application.cfc

<cfset this.name = “ArtGalleryApp”>

<cfset this.ormenabled = “true”>

<cfset this.datasource = “cfartgallery”>

In afara de acestea, exista si alte setari pe care le puteti utiliza pentru a configura ORM. Pentru detalii, consultati setarile ORM.

Nota: Definiti aceste setari numai in Application.cfc si nu in Application.cfm.

Pasul 2:

Asociati ARTISTS.cfc la tabelul bazei de date.

  1. Creati ARTISTS.cfc.
  2. Semnalati-l ca un CFC persistent si mapati-l pe tabelul ARTISTS. Pentru a face ARTISTS.cfc persistent, atributul persistent trebuie setat la true in eticheta cfcomponent. Atributul tabelei trebuie setat la numele tabelei. Daca atributul tabelei nu este specificat, atunci numele CFC este luat ca numele tabelei. Fiecare CFC poate primi un nume de entitate. Numele entitatii este numele folosit de functiile legate de ORM pentru a lucra cu CFC persistent. Poate fi specificat folosind atributul entityname in cfcomponent. Daca numele de entitate nu este specificat, atunci numele CFC este luat ca nume de entitate.
  3. Acum, creati proprietati in ARTISTS.cfc si asociati-le cu coloanele din tabel. Ar trebui creata o proprietate pentru fiecare coloana din tabel. Pentru a asocia proprietatea cu coloana, atributul coloanei trebuie setat la numele coloanei corespunzatoare. Daca atributul coloanei nu este specificat, atunci numele proprietatii este luat ca numele coloanei.

    Pentru detalii despre setarea atributelor specifice ORM, consultati Definirea maparii ORM.

    ARTISTS.cfcis este definit astfel:

    <cfcomponent persistent = “true”>

    <cfproperty name = “id” column = “ARTISTID” generator = “increment”>

    <cfproperty name = “FIRSTNAME”>

    <cfproperty name = “LASTNAME”>

    <cfproperty name = “ADDRESS”>

    <cfproperty name = “CITY”>

    <cfproperty name = “STATE”>

    <cfproperty name = “POSTALCODE”>

    <cfproperty name = “EMAIL”>

    <cfproperty name = “PHONE”>

    <cfproperty name = “FAX”>

    <cfproperty name = “thepassword”>

    </cfcomponent>

    Pasul 3:

    Efectuati operatii CRUD.

    Pentru a prelua date din tabelul ARTISTS, utilizati EntityLoad ():

    ARTISTI = EntityLoad (“ARTISTI”)

    Toate inregistrarile din tabelul ARTISTS sunt recuperate ca o matrice de obiecte.

    Pentru a adauga un nou artist, creati un nou obiect de artist si apelati EntitySave () pentru acest obiect.

    <cfscript>

    incercati {

    newArtistObj = EntityNew („artisti”);

    newArtistObj.setfirstname („John”);

    newArtistObj.setlastname („Smith”);

    newArtistObj.setaddress („5 Newport lane”);

    newArtistObj.setcity („San Francisco”);

    newArtistObj.setstate (“CA”);

    newArtistObj.setPostalCode (“90012”);

    newArtistObj.setphone (“612-832-2343”);

    newArtistObj.setfax (“612-832-2344”);

    newArtistObj.setemail (“[email protected]”);

    newArtistObj.setThePassword (“jsmith”);

    EntitySave (newartistobj);

    ormflush ();

    } catch (Exception ex) {

    WriteOutput (“<p> # ex.message # <

    Pentru a actualiza o inregistrare existenta, incarcati acel obiect si modificati-l. ColdFusion detecteaza automat ca randul pentru acest obiect trebuie actualizat si va fi actualizat la apelarea ORMFlush ().

    ORMFlush () este apelat la sfarsitul cererii in mod implicit.

    In urmatorul cod, noul ArtistObjis este deja gestionat de ORM, deci nu trebuie incarcat din nou.

    newArtistObj.setphone (“612-832-1111”);

    ormflush ();

    Pentru a sterge o inregistrare, se utilizeaza EntityDelete ().

    EntityDelete (newArtistObj);

    ormflush ();

    Pasul 4:

    Definirea relatiilor Definiti mai

    intai maparea pentru tabelul ART pentru a defini o relatie intre lucrarile de arta si artisti.

    ART.cfc este definit dupa cum urmeaza:

    <cfcomponent persistent = “true”>

    <cfproperty name = “artid” generator = “increment”>

    <cfproperty name = “artname”>

    <cfproperty name = “price”>

    <cfproperty name = “largeimage”>

    <cfproperty name = ” mediaid “>

    <cfproperty name =” issold “>

    </cfcomponent>

    In cfartgallery, tabelul ARTISTI are o relatie unu-la-multi cu tabelul ART, care sunt unite folosind coloana cu cheie straina ARTISTID. Aceasta inseamna ca fiecare artist a creat mai multe piese de arta si multe opere de arta sunt create de un singur artist. Pentru a reprezenta acest lucru in modelul de obiect, fiecare obiect ARTISTS ar contine o serie de obiecte ART. Fiecare obiect ART va contine o referinta la obiectul sau ARTISTS. Acesta este un exemplu de relatie bidirectionala.

    Pentru a realiza acest lucru, trebuie sa adaugati o proprietate suplimentara obiectului ARTISTS.cfc care contine matricea de obiecte ART pentru acel ARTIST.

    <cfproperty name = “art” type = “array” fieldtype = “one-to-many” cfc = “Art” fkcolumn = “ARTISTID”>

    fieldtype = “one-to-many” specifica tipul relatiei.

    CFC = “Art” este folosit pentru a transmite ca relatia este cu “ART” cfc.

    fkcolumn = “artistid” specifica cheia straina.

    ART formeaza o relatie multi-la-unu cu tabelul ARTISTS deoarece fiecare piesa de arta este creata de un artist si multe alte piese de arta sunt create de acelasi artist. Pentru a defini aceasta relatie, adaugati o proprietate in ART.cfc pentru a defini relatia cu ARTISTS.cfc.

    <cfproperty name = “artisti” fieldtype = “many-to-one” fkcolumn = “artistid” cfc = “Artists” lazy = “true”>

    fieldtype = “multi-la-unu” specifica tipul relatiei.

    CFC = “ARTISTI” este folosit pentru a transmite ca relatia este cu “ARTISTI” cfc.

    fkcolumn = “ARTISTID” specifica cheia straina.

    Pasul 5:

    preluati inregistrari in relatie

    <cfscript>

    artist = EntityLoad („Artisti”, 1, adevarat);

    arts = artist.getArts ();

    WriteOutput (“<b>” & artist.getid () & “” & artist.getfirstname () & “” &

    artist.getlastname () & “</b> are” & ArrayLen (arts) & “arts: <br > “);

    if (ArrayLen (arts)> 0)

    {

    for (j = 1; j <= ArrayLen (arts); j ++)

    {

    art = arts [j];

    WriteOutput (art.getartname () & “<br>”);

    }

    }

    </cfscript>

you porn cento x cento cwntoxcento
pornostar susanna bella cxc porno
xvideos malena la pugliese cxc streaming
italian poen daiana cento x cento
2 troie sul tranvai daiana cento x cento
porno porcate daiana centoxcento
film centopercento streaming daiana porno
roberta gemma puttana daniela di ladispoli
malena seno daniela di ladispoli porno
centoxcento prod daniela ladispoli porn
centoxcento porn videos danza classica porno
gloria porn darlavia
xxxitalianporn deborah sorrentino porn
martina smeraldi video hard deborah sorrentino xxx
video porno giada da vinci deepthroat italian
anina silk del maiale non si butta via niente 2
gemma porno star dellai lesbian
malena hot porno dellai lesbo
xxx tacchi demoni porno
visconti porn desperate housewife streaming italiano