den blandede parlamentariske forsamling kriterier api -

, kriterierne api er en forud fastlagt adi, der anvendes til at definere forespørgsler for enheder.det er en alternativ måde at definere en jpql forespørgsel.disse spørgsmål er af type sikkerhed og bærbare og let at ændre ved at ændre syntaks.i lighed med jpql følger det abstrakte schema (let at redigere skema) og indlejrede objekter.de metadata, api er blandet med kriterier api til model vedvarende enhed for kriterier forespørgsler.den største fordel af kriterierne api - er, at fejl opdages tidligere under udarbejdelse.- baseret jpql forespørgsler og den blandede parlamentariske forsamling kriterier baseret på forespørgsler er samme præstationer og effektivitet. historien kriterier api, kriterierne api indgår i alle udgaver af den blandede parlamentariske forsamling derfor hvert skridt af kriterier api er meddelt i specifikationerne for den blandede parlamentariske forsamling, i den blandede parlamentariske forsamling 2.0, kriterierne forespørgsel api, standardisering af forespørgsler er udviklet. i den blandede parlamentariske forsamling 2.1, kriterier, ajourføre og slette (bulk opdatering og slette) er medtaget, kriterier forespørgsel struktur, de kriterier, api - og jpql er tæt forbundne og har lov til at udforme anvender tilsvarende operatører i deres spørgsmål.det følger heraf, javax.persistence.criteria pakke til udformning af en forespørgsel.forespørgslen struktur: syntaks kriterier forespørgsel., følgende enkle kriterier søgning returnerer alle tilfælde af virksomheden klasse i datakilden, entitymanager em =...; criteriabuilder cb =. getcriteriabuilder(); criteriaquery < enhed klasse > cq = cb. createquery (enhed. klasse); root < enhed > i = cq. (enhed. klasse); cq. vælg (enhed) typedquery < enhed > d = em.createquery (ds); listen < enhed > allitems = q. getresultlist();,, forespørgslen, viser den grundlæggende skridt til at skabe et kriterier.,, entitymanager instans anvendes til at skabe et criteriabuilder objekt.,, criteriaquery instans anvendes til at skabe et spørgsmål genstand.dette spørgsmål genstand er attributter vil blive ændret med oplysninger om de spørgsmål, criteriaquery.form metode er kaldet til at sætte spørgsmålstegn ved roden.,, criteriaquery.select er kaldet til at fastsætte resultat liste type.,, typedquery < t > f.eks. skal anvendes til at forberede en forespørgsel til udførelse, og med angivelse af typen af forespørgsel resultat.,, getresultlist metode på typedquery < t > formål at fuldbyrde en forespørgsel.dette spørgsmål kommer en samling af enheder, og resultatet er oplagret i en liste, f.eks. kriterier api, lad os tage det eksempel på arbejdstager - databasen.lad os antage, den jpadb.employee tabel indeholder følgende poster:, eid ename løn grader 401 gopal 40000 tekniske direktør 402 manisha 40000 korrekturlæsere 403 masthanvali 35000 tekniske forfatter 404 satish 30000 tekniske forfatter 405 krishna 30000 tekniske forfatter 406 kiran 35000 korrekturlæsere, skabe en avs - projektet i en ide, der hedder, jpa_eclipselink_criteria,.alle modulerne i dette projekt er vist som følger:,, at skabe enheder, skabe en pakke, der hedder, com.tutorialspoint.eclipselink.entity under,'src, pakke.skabe en klasse, der hedder, employee.java under givet pakke.klasse ansat enhed er vist som følger:, pakke com.tutorialspoint.eclipselink.entity; import javax.persistence.entity; import javax.persistence.generatedvalue; import javax.persistence.generationtype; import javax.persistence.id; @ enhed offentlige klasse ansat (@ id @ generatedvalue (strategi = generationtype. auto) private int eid; private snor ename; private dobbelt løn; private snor grader, offentlig ansat (int eid, - ename, dobbelt løn, snor grader) (super); this.eid = fedevarer; this.ename = ename; this.salary = løn; this.deg = grader.} offentligt ansat () (super();} offentlige int geteid () (tilbagevenden eid;} offentlige tomrum seteid (inteid) (this.eid = fedevarer;} offentlige snor getename () (tilbage ename;} offentlige tomrum setename (string - ename) (this.ename = ename;} offentlige dobbelt getsalary () (tilbagevenden løn;} offentlige tomrum setsalary (dobbelt løn) (this.salary = løn;} offentlige snor getdeg () (tilbagevenden grader.} offentlige eller setdeg (string grader) (this.deg = grader.} @ tilsidesætte offentlige snor tostring() {tilbage "ansat [eid =" + eid + ", ename =" + ename + "løn =" + løn + ", grader =" + grader + "]"}}, persistens. xml, persistence.xml fil er nødvendig for at få den database, og registrering af enhed klasser. persistence.xml vil blive oprettet af formørkelse"mens skorpen en avs - projektet.konfigurationen detaljer er bruger specifikation.den persistence.xml fil er vist som følger:, <?xml - version = "0" kodning = "utf - 8"?> < persistens version = "0" xmlns = "http://java.sun.com/xml/ns/persistence" xmlns: xsi = "http://www.w3.org/2001/xmlschema-instance" xsi: schemalocation = "http://java.sun.com/xml/ns/persistence http: //java. sol. kom /xml - /ns /persistens /persistence_2_0. xsd -" > < persistens enheds navn = "eclipselink_jpa" transaktion type = "resource_local" > < klasse > kom. tutorialspoint. eclipselink. enhed. ansat < /klasse > < egenskaber > < ejendomsnavn = "javax. persistens. jdbc. url: værdi =" jdbc: mysql: //localhost: 3306 /jpadb "/> < ejendomsnavn =" javax. persistens. jdbc. bruger ": værdi =" rod "/> < ejendomsnavn =" javax. persistens. jdbc. kodeordet "værdi =" rod "/> < ejendomsnavn = "javax. persistens. jdbc." værdi = "kom. mysql. jdbc." /> < ejendomsnavn = "eclipselink. skovhugst. plan" værdi = "fint" /> < ejendomsnavn = "eclipselink ddl generation." værdi = "skabe tabeller" /> < /egenskaber > < /persistens unit > < /persistens > -, service - klasser, dette modul omfatter service - klasser, der gennemfører kriterier spørgsmål del ved hjælp af metadata api - initialization.skabe en pakke, der hedder,'com. tutorialspoint. eclipselink. service ".den klasse, der hedder, criteriaapi.java, er oprettet i henhold til givet pakke.den dao klasse er vist som følger:, pakke com.tutorialspoint.eclipselink.service; import java.util.list; import javax.persistence.entitymanager; import javax.persistence.entitymanagerfactory; import javax.persistence.persistence; import javax.persistence.typedquery; import javax.persistence.criteria.criteriabuilder; import javax.persistence.criteria.criteriaquery; import javax.persistence.criteria.root; import com.tutorialspoint.eclipselink.entity.employee; offentlige klasse criteriaapi {offentlige statisk tomrum vigtigste (string [] args) (entitymanagerfactory emfactory = vedholdenhed. createentitymanagerfactory ("eclipselink_jpa"); entitymanager entitymanager = emfactory. createentitymanager (); criteriabuilder criteriabuilder =.itymanager. getcriteriabuilder(); criteriaquery < objekt > criteriaquery = criteriabuilder. createquery(); root < ansat > i = criteriaquery. fra (ansat. klasse); //vælge alle regnskab. println ("vælge alle plader"). criteriaquery < objekt > udvælge = c riteriaquery. vælg (fra); typedquery < objekt > typedquery = entitymanager. createquery (vælg); listen < objekt > resultlist = typedquery. getresultlist(); (objekt o: resultlist) (ansat e = (arbejdstager) o; system. println ("eid -" + e. geteid() + "ename:" + e. getename())} //til regnskab. println ("vælge alle optegnelser, som følge at bestille"); criteriaquery < objekt > select1 = criteriaquery. vælg (fra); select1. orderby (criteriabuilder. asc (fra. kom (ename ")); typedquery < objekt > typedquery1 = entitymanager. createquery (vælg); listen < objekt > resultlist1 = typedquery1. getresultlist(); (objekt o: resultlist1) {ansat e = (arbejdstager) o; system. println (" eid: "+ e. geteid() +" ename: "+ e. getename())} entitymanager. luk (); emfactory. tæt (;) efter udarbejdelsen og gennemførelsen af ovennævnte program, du vil få produktionen i konsol panel af en ide som følger: vælg alle optegnelser eid: 401 ename: gopal eid: 402 ename: manisha eid: 403 ename: masthanvali eid: 404 ename: satish eid: 405 ename: krishna eid: 406 ename: kiran vælge alle registreringer af follav, hvorved eid: 401 ename: gopal eid - 406 ename: kiran eid: 405 ename: krishna eid: 402 ename: manisha eid: 403 ename: masthanvali eid: 404 ename: satish,,



Previous:
Next Page: