xstream convertoren xstream xstream een belangrijk onderdeel van de bibliotheek, die verantwoordelijk is voor de voorwerpen in XML - en vice versa.Voor de xstream voorkomende soorten, zoals de primitieven, touw, documenten en de datum van verzameling, opstelling, met behulp van een groot aantal omzetter. - laten we een singlevalueconvertor waarvan het doel is het omzetten van een object in een string.We zullen singlevalueconvertor schrijven met een object op touw, het creëren van een converter dienst nameconverter singlevalueconverter {gemeenschappelijk doel fromstring (string naam) {string [...] nameparts = naam. Splitsing (","); weer een nieuwe naam (nameparts [0] [1], nameparts); de touwtjes} (naam van Het voorwerp) {terugkeer ((naam) (naam). Getfirstname) + "," + ((naam) (naam). Getlastname);} de Boolcaanse () {terug. Gelijk aan (naam.);}}, de registratie van een converter registerconverter xstream. (nieuwe nameconverter ()), bijvoorbeeld geen; omzetter, laten wij eerst de test van de code niet. Xstream, het creëren van een document getiteld xstreamtester Java - klasse C: \\ \\>>>>>> xstream_workspace, training van de ComPunt, River,,,,, documenten: xstreamtester Java,,, pakket. Com.tutorialspoint.xstream; de invoer van java.io.bytearrayinputstream; de invoer van java.io.bytearrayoutputstream; de invoer van javax.xml.transform.outputkeys; de invoer van javax.xml.transform.source; de invoer van javax.xml.transform.transformer; de invoer van javax.xml.transform.sax.saxsource; de invoer van javax.xml.transform.sax.saxtransformerfactory; de invoer van javax.xml.transform.stream.streamresult; de invoer van org.xml.sax.inputsource; De invoer van com.thoughtworks.xstream.xstream; de invoer van com.thoughtworks.xstream.annotations.xstreamalias; de invoer van com.thoughtworks.xstream.annotations.xstreamasattribute; de invoer van com.thoughtworks.xstream.io.xml.staxdriver; de cursus (publiek xstreamtester statische leegte Main (reeks parameters []) {Xstreamtester instrument = nieuwe xstreamtester (); de rivier xstream = nieuwe XI (nieuwe staxdriver ()); de studenten = tester. Getstudentdetails (); de River. Autodetectannotations (echt); ///////- string object voor XML - XML - = xstream. XML (studenten); het systeem.. leegte fac (formatxml (XML)); getstudentdetails () {} particuliere studenten studenten = nieuwe studenten ("het", "派拉沙"); de studenten;}. (... Formatxml XML) {proberen {transformatoren in serie = saxtransformerfactory. Newinstance () (); de programma 's. Newtransformer bijgehouden. Setoutputproperty (outputkeys.indent, "ja"); setoutputproperty ("{het programma http://xml.apache.or bijgehouden.G /xslt} streepje "en" 2 "); de bron xmlsource = nieuwe SAXSource (nieuwe inputsource (nieuw uit de reeks bytes (xml - input - stroom. Getbytes ()); StreamResult res = nieuwe StreamResult (nieuwe bytearrayoutputstream ()); een seriesprayer. Veranderen (xmlsource, terug naar de nieuwe res); string (((byte - output -) onderzoek tobytearray () () getoutputstream)} vangst (uitzondering.); e) {}}} terug; @ xstreamalias (" student ") studenten {@ xstreamalias (" naam ") studentname @ xstreamasattribute particuliere sociale steun (een naam; firstname, string achternaam) {this.studentname = nieuwe naam (firstname, achternaam);}, de naam van getname () {terug studentname}} van de CIA.De SS - naam (privé - string firstname; particuliere string achternaam; de naam van een firstname, string achternaam) {naam this.firstname = = = = = = = naam; this.lastname;} {string getfirstname () firstname; een string getlastname () {}}}, terug naar de achternaam; de opstelling van de Opstelling van het,, opgenomen als volgt: C:,, xstream_workspace COM tutorialspoint, xstream> xstreamtester.java opgenomen, die nu xstreamtester resultaten zien, C: \\ \\ \\ xstream_workspace COM tutorialspoint xstream> Java xstreamtester, en te controleren of de produktie als volgt:,, <?De XML - = "1" codering = "utf - 8"?> < studenten > < naam > < naam > in de eerste naam achternaam < /> < > Parashar < /Naam /namen > < > < /">,., laten we nu met de omzetter xstream testen van de code, het creëren van een - de naam van een xstreamtester, C: \\ \\ \\> xstream_workspace COM tutorialspoint River,,,,, documenten: xstreamtester Java,,, pakket. Com.tutorialspoint.xstream; de invoer van java.io.bytearrayinputstream; de invoer van java.io.bytearrayoutputstream; de invoer van javax.xml.transform.outputkeys; de invoer van javax.xml.transform.source; de invoer van javax.xml.transform.transformer; de invoer van javax.xml.transform.sax.saxsource; de invoer van javax.xml.transform.sax.saxtransformerfactory; de invoer van niet javax.xml.transform.stream.streamresult;RT org.xml.sax.inputsource; de invoer van com.thoughtworks.xstream.xstream; de invoer van com.thoughtworks.xstream.annotations.xstreamalias; de invoer van com.thoughtworks.xstream.annotations.xstreamasattribute; de invoer van com.thoughtworks.xstream.converters.singlevalueconverter; de invoer van com.thoughtworks.xstream.io.xml.staxdriver; de cursus (publiek xstreamtester statische leegte belangrijkste (reeks parameters []) {xstreamtester instrument = nieuwe xstreamtester (); de rivier xstream = nieuwe XI (nieuwe staxdriver ()); De studenten = tester. Getstudentdetails (); de River. Autodetectannotations (echt); de River. Registerconverter (nieuwe nameconverter ()); ///////tegen de omschakeling van XML - string XML - = xstream. XML (studenten); het systeem.Rintln (formatxml (XML)); getstudentdetails () {} particuliere studenten studenten = nieuwe studenten ("het", "派拉沙"); de studenten;}. (... Formatxml XML) {proberen {transformatoren in serie = saxtransformerfactory. Newinstance () (); de programma 's. Newtransformer bijgehouden. Setoutputproperty (outputkeys.indent "is."); de serie. Setoutputproperty ("(HTTP://XML -. Apache. Org /xslt} streepje" en "2"); de bron xmlsource = nieuwe SAXSource (nieuwe inputsource (nieuwe reeks bytes lezen van input - (xml. Getbytes ()); StreamResult res = nieuwe StreamResult (nieuwe bytearrayoutputstream ()); de serie. (xmlsource, res);Weer een nieuwe reeks (((byte - output -) onderzoek getoutputstream ()). Tobytearray ());} vangst (abnormale) {}}} terug; @ xstreamalias ("student") studenten {@ xstreamalias ("naam") @ xstreamasattribute particuliere sociale steun (nominale studentname; een string firstname, this.studentname = nieuwe achternaam) {naam} (firstname, achternaam); de naam getname () {terug studentname;}} klasse (privé - string firstname; particuliere string achternaam; openbare naam (touw firstname, string achternaam) {this.firstname =; this.lastname = naam; een string getfirstname (}) (in verband met de terugkeer van touw vinden;}Astname () {}) klasse nameconverter terug achternaam; dat singlevalueconverter {gemeenschappelijk doel fromstring (string naam) {string [...] nameparts = naam. Splitsing (","); weer een nieuwe naam (nameparts [0] [1], nameparts);} touw (naam) {terugkeer ((de naam van de naam)). Getfirstname () + "," + ((naam) (naam). Getlastname);} de Boolcaanse () {terug. Gelijk aan (naam.);}}, de opstelling van het,,, opgenomen, C: \\ \\ opgesteld als volgt: xstream_workspace COM tutorialspoint, xstream> xstreamtester.java opgenomen, die nu xstreamtester resultaten zien, C: \\ \\ \\ xstream_workspace COM tutorialspoint xstream> Java xstreamtester te controleren, de volgende.Laag: de, en,De XML - = "1" codering = "utf - 8"?> < naam van de student = "mahesh, Parashar" />, gewoonte.
Previous:XI - toelichting op de
Next Page:Xstream tegen de stroom