ejb pletter /clobs

, ejb 3,0 yder støtte til "og clob former ved hjælp af @ lob anmærkning.efter java - typer kan kortlægges ved hjælp af @ lob anmærkning.,,, java. sql. klump,,, java. sql. clob, byte [],,, snor,,, serializable objekt, @ enhed @ tabel (navn = "bøger") @ entitylisteners (bookcallbacklistener. klasse) offentlige klasse bog gennemfører serializable {...private byte [] billede; @ lob @ grundlæggende (hente = fetchtype. ivrig) offentlige byte [] getimage() {tilbage billede.}.}, f.eks. ansøgning, lad os skabe en test ejb anvendelse for at teste klat /clob støtte i ejb 3.0, stepdescription 1create et projekt med et navn, ejbcomponent under en pakke, com.tutorialspoint.entity, som forklaret i den, ejb - skabe anvendelse, kapitel.anvend det projekt, der blev skabt i, ejb - persistens, kapitel som sådan i dette kapitel, til at forstå, clob /klat objekter i ejb begreber.2create, book.java under - pakken, kom. tutorialspoint. enhed.brug ejb - persistens, kapitel som reference.hold resten af filerne uændret.3clean og opbygge anvendelse for at sikre, at erhvervslivet logik er at arbejde som pr. kravene.4finally, anvende anvendelse i form af jar - fil på jboss applikationsserver.jboss applikationsserver vil starte automatisk, hvis det ikke er begyndt endnu.5now skabe ejb klient, en konsol baseret på anvendelse på samme måde som forklaret i, ejb - skabe anvendelse, kapitel under emne, skabe klient adgang til ejb,.skabe /ændre bog tabel, skabe tabel bog (id heltal primære nøgle, navn varchar (50) ændrer tabel bog tilføje image bytea; ændrer tabel bog tilføje xml - tekst, ejbcomponent (ejb modul), book.java, pakke com.tutorialspoint.entity; import com.tutorialspoint.callback.bookcallbacklistener; import java.io.serializable; import javax.persistence.basic; import javax.persistence.column; import javax.persistence.entity; import javax.persistence.entitylisteners; import javax.persistence.fetchtype; import javax.persistence.generatedvalue; import javax.persistence.generationtype; import javax.persistence.id; import javax.persistence.lob; import javax.persistence.table; @ enhed @ tabel (navn = "bog") offentlige klasse bog gennemfører serializable {private int id; private snor navn; private byte [] billede; private snor xml, offentlige book() {} @ id @ generatedvalue (strategi = generationtype. identitet) @ kolonne (navn = "id") offentlige int getid() {tilbage id.} offentlige tomrum setid int (id) {} offentlige this.id = id. - getname() {tilbage navn} offentlige tomrum setname (string navn) (this.name = navn} @ lob @ grundlæggende (hente = fetchtype. ivrig) offentlige byte [] getimage() {tilbage billede;} offentlige tomrum setimage (byte [] billede) (this.image = billede;} @ lob @ grundlæggende (hente = fetchtype. ivrig) offentlige snor getxml() {tilbage xml;} offentlige tomrum setxml (string xml) (denne. xml - = xml;}}, librarypersistentbeanremote.java, pakke com.tutorialspoint.stateless; import com.tutorialspoint.entity.book; import java.util.list; import javax.ejb.remote; @ fjerntliggende offentlig grænseflade librarypersistentbeanremote {tomrum addbook (bog bookname); listen < bog > getbooks();}, librarypersistentbean.java, pakke com.tutorialspoint.stateless; import com.tutorialspoint.entity.book; import java.util.list; import javax.ejb.stateless; import javax.persistence.entitymanager; import javax.persistence.persistencecontext; @ statsløse offentlige klasse librarypersistentbean gennemfører librarypersistentbeanremote {offentlige librarypersistentbean() {} @ persistencecontext (unitname = "ejbcomponentpu") privat entitymanager entitymanager; offentlige tomrum addbook (bog, bog) (entitymanager. fortsætter (bog)} offentlig liste < bog > getbooks() {tilbage entitymanager. createquery ("fra bog"). getresultlist();}},,,,,,, så snart du indsætte ejbcomponent projekt om jboss, bemærker de jboss log.,,, jboss automatisk er skabt en jndi adgang til vores møde, bønne -, librarypersistentbean /fjerntliggende,.,,, vi vil anvende denne lookup tråde for at få isolerede forretninger er genstand for type -, kom. tutorialspoint. interceptor. librarypersistentbeanremote,,,, jboss applikationsserver log produktion.16:30:01401 info [jndisessionregistrarbase] bindende følgende punkter i den globale jndi: librarypersistentbean /fjern - ejb3. x misligholdelse fjerntliggende virksomheder grænseflade librarypersistentbean /remote-com.tutorialspoint.interceptor.librarypersistentbeanremote - ejb3. x fjerntliggende virksomheder grænseflade 16:30:02723 info [sessionspeccontainer] begynder jboss. j2ee tingelser [...]: jar jar navn = = ejbcomponent. librarypersistentbean, service = ejb3 16:30:02723 info [ejbcontainer] begyndte ejb - com.tutorialspoint.interceptor.librarypersistentbeanremote ejbname: librarypersistentbean 16:30:02731 info [jndisessionregistrarbase] bindende følgende punkter i den globale jndi: librarypersistentbean /fjern - ejb3. x misligholdelse fjerntliggende virksomheder grænseflade librarypersistentbean /remote-com.tutorialspoint.interceptor.librarypersistentbeanremote - ejb3. x fjerntliggende virksomheder grænseflade., ejbtester (ejb klient), jndi.properties, java. navngivning. første = org.jnp.interfaces.namingcontextfactory java. navngivning. url. pkgs = org. jboss. navn: org.jnp.interfaces java. navngivning. udbyder. url = localhost, disse egenskaber bruges til at nulstille initialcontext objekt for java, at tjeneste,,, initialcontext objekt, vil blive anvendt til at lookup statsløse samling bean,,, ejbtester.java, pakke com.tutorialspoint.test; import com.tutorialspoint.stateful.librarybeanremote; import java.io.bufferedreader; import java.io.fileinputstream; import java.io.ioexception; import java.io.inputstreamreader; import java.util.list; import java.util.properties; import javax.naming.initialcontext; import javax.naming.namingexception; offentlige klasse ejb- prøve (bufferedreader brconsolereader = null egenskaber rekvisitter. initialcontext ctx; (rekvisitter = nye properties(); prøve (rekvisitter. belastning (nye fileinputstream ("jndi. egenskaber")} fangst (ioexception ex) (ex. printstacktrace();} prøve (ctx = nye initialcontext (-);} fangst (namingexception ex) (eks. printstacktrace();} brconsolereader = nye bufferedreader (nye inputstreamreader (system. i)} offentlige statisk tomrum vigtigste (string [] args) (ejbtester ejbtester = nye ejbtester(); ejbtester. testblobclob();} private tomrum showgui() {system. println ("**********************"); system.out.println ("velkommen til bog butikken"); system. println ("**********************"); system. tryk ("muligheder. n1.tilføj bog. n2.exit. nenter valg: ");} private tomrum testblobclob() (prøve (int valg = 1; librarypersistentbeanremote librarybean = (librarypersistentbeanremote) ctx. lookup (" librarypersistentbean /fjerntliggende "), mens (valg!= 2) {snor bookname; snor publishername; snor publisheraddress; showgui(); snor strchoice = brconsolereader. readline(); valg = tal. parseint (strchoice); hvis (valg = = 1) (system. tryk ("enter bog hedder:"); bookname = brconsolereader. readline(); snor xml - = "< bog > < navn >" + bookname + "< /navn > < /bog >" bog, bog = nye book(); bog. setname (bookname); byte [] imagebytes = {0x32, 0x32,0x32, 0x32,0x32, 0x32,0x32, 0x32, 0x32, 0x32,0x32, 0x32,0x32, 0x32,0x32, 0x32,0x32, 0x32,0x32, 0x32,0x32, 0x32,0x32, 0x32} bog. setimage (imagebytes); bog. setxml (xml); librarybean. addbook (bog)} andre, hvis (valg = = 2) {pause.}} liste < bog > bookslist = librarybean. getbooks(). system. println ("bog (er), der er opført så vidt:" + bookslist. size()); int - = 0 (bog, bog: bookslist) (system. println (i + 1) + "."+ bog. getname()); byte [] imagebyts = bog. getimage(); hvis (imagebyts!= null) (system. tryk ("billede bytes: ["); int (j = 0 j < imagebyts.length; j + +) (system. tryk ("0x" + - format ("% x", imagebyts [j]) + ");) system. println (" ");} system. println (bog. getxml()); jeg + +) fangst (undtagen e) (system. println (f. getmessage()); f. printstacktrace();} {{(brconsolereader endelig prøve!= null) (brconsolereader. close();}} fangst (ioexception ex) (system. println (eks. getmessage())}}}}, ejbtester udfører følgende opgaver,.,,, last egenskaber fra jndi.properties og nulstille initialcontext objekt.,,, testinterceptedejb() metode, jndi lookup er færdig med navn - "librarypersistencebean /fjerntliggende" for at få fjernbetjeningen business objekt (statsløse ejb).,,, så brugeren er vist et bibliotek butik brugergrænseflade, og han /hun bliver bedt om at træde valg.,,, hvis brugeren indtaster 1, system kræver bog navn og redder bog ved hjælp af statsløse samling bean addbook() metode.samling bean er lagring af bogen i databasen.,,, hvis brugeren indtaster 2, systemet har bøger ved hjælp af statsløse samling bean getbooks() metode og udgange.,,, løb klient adgang til ejb, find ejbtester.java i projektet udforsker.højreklik på ejbtester klasse og udvælge, løb fil,., kontrollere følgende output i netbeans konsol. løb: ********************** velkommen til boghandel ********************** muligheder. 1.tilføj bog 2.udførsel træde valg: 1 træde bog navn: lære afprøvning ********************** velkommen til boghandel ********************** muligheder. 1.tilføj bog 2.udførsel træde valg: 2 bog (er), der er opført så vidt: 1 1.lære afprøvning image bytes: [0x32 0x32 0x32 0x32 0x32 0x32 0x32 0x32 0x32 0x32 0x32 0x32 0x32 0x32 0x32 0x32 0x32 0x32 0x32 0x32 0x32 0x32 0x32 0x32] < bog > < navn > lære test < /navn > < /bog > opbygning vellykket (i alt: 20 sekunder)



Previous:
Next Page: