stivere 2 type omstilling

, alt på en http anmodning behandles som en streng, af protokollen.dette omfatter tal, booleans, tal, datoer, decimaler, og alt andet.det er en snor i henhold til adressen.men i går i skole, du kunne have egenskaber af datatyper.han har tid autowire egenskaber for dig?, stivere benytter sig af en lang række type konvertere under dynen til at løfte.for eksempel, hvis du har et heltal attribut i deres aktion klasse, stivere automatisk konverterer anmodning parameter til heltal attribut, uden at du gør noget.ved misligholdelse, stivere, kommer med en række type).nogle af dem er anført nedenfor, og hvis du bruger nogen af dem, så har du intet at bekymre dig om:,,, tal, flyde, dobbelt decimal,,,, dato og datetime,,,, systemer og samlinger,,,, domæneværdilister,,,, boolean,,,,,,, bigdecimal,,, nogle gange, når du bruger dine egne data type, er det nødvendigt at tilføje andre omformere til stellet, ved, hvor omdanne disse værdier, før der.overveje følgende pojo klasse, miljø -, emballage com.tutorialspoint.struts2; offentlige klasse miljø (private snor navn; offentlige miljø (string navn) (this.name = navn} offentlige snor getname() {navn} offentlige tomrum tilbage; setname (string navn) (this.name = navn}}, dette er et meget enkelt klasse det er en egenskab, navn, så ikke noget særligt om denne klasse.lad os skabe en anden klasse, der indeholder oplysninger om den ordning, systemdetails -.ved anvendelsen af denne exercices, jeg har hardcoded miljø til "udvikling" og styresystemer til "vinduer xp sp3".i et virkeligt projekt, ville du få oplysninger fra systemet konfiguration.så lad os få følgende foranstaltninger klasse:, pakke com.tutorialspoint.struts2; import com.opensymphony.xwork2.actionsupport; offentlige klasse systemdetails udvider actionsupport (private miljø = nye miljø ("udvikling"); private snor operatingsystem = "vinduer xp sp3" offentlige snor execute() {tilbage succes;} offentlige miljø getenvironment() {vende miljø;} offentlige tomrum setenvironment (miljø miljø) (this.environment = miljø;} offentlige snor getoperatingsystem() {tilbage operatingsystem;} offentlige tomrum setoperatingsystem (string - operatingsystem) (this.operatingsystem = operatingsystem;}}, lad os skabe en simpel loxfil, system.jsp, til visning af miljø - og styresystemer oplysninger. <% @ side language = "java" contenttype = "tekst /html; charset = iso-8859-1" pageencoding = "iso-8859-1"% > <% @ taglib præfiks = "s" uri = "/stivere hundetegn"% > <!doctype offentlige "- http: ///////w3c dtd 4.01 midlertidige //en" http: //www.w3.org /tr /html4 /løs. dtd "> < html > < head > < afsnit > systemdata < /afsnit > < /head > < krop > miljø: < værdien =" miljø "/> < br /> operativsystem: < værdien =" operatingsystem "/> og lt; /organ > < /html > lad os ledninger, system.jsp, og, systemdetails.java, klasse, sammen med, stivere. xml,.den systemdetails klasse har en simpel metode, der vender tilbage execute() snoren "succes", <?xml - version = "0" kodning = "utf - 8"?> <!doctype stivere offentlige "- ////dtd apache software institut stivere konfiguration 2.0 //en" http: //stivere. apache. org /dtds /struts-2.0. dtd "> < stivere > < konstant navn =" stivere. devmode "værdi =" ægte "/> < pakke navn =" helloworld "udvider =" stivere default "> < navn =" system "klasse =" kom. tutorialspoint. struts2. systemdetails "metode =" udfør "> < resultat navn =" succes "> /system. lox < /resultat > < /aktion > < /pakke > < /stivere >, klik på projektets navn og klik, export > krig akter, at skabe en krig fil.så anvende denne krig i hankat er webapps fortegnelse.endelig begynder at hankat server og forsøger at få adgang til url: http: //////////////////////localhost: 8080 helloworldstruts2 system.action.det her vil give dig efter skærm:,,,,,, hvad er der galt med ovennævnte produktion?stivere kan vise og omdanne den snor "vinduer xp sp3" og andre indbyggede datatyper, men det ændrer ikke ved, hvad vi skal gøre med den ejendom, miljø, type.så det simpelthen hedder, tostring(), metode på klassen.for at løse dette problem, lad os nu skabe og registrering af et enkelt, typeconverter, for miljøet, klasse.oprette en gruppe, som kaldes, environmentconverter.java, med følgende, pakke com.tutorialspoint.struts2; import java.util.map; import org.apache.struts2.util.strutstypeconverter; offentlige klasse environmentconverter udvider strutstypeconverter {@ tilsidesætte offentlige formål convertfromstring (kort forbindelse snor [] værdier, klasse clazz) {miljø env = nye miljø (værdier [0]); tilbage env;} @ tilsidesætte offentlige - converttostring (kort forbindelse protesterer værdi) (miljø, env = (miljø) værdi tilbage env = = nul?nul: env. getname();}}, environmentconverter, udvider, strutstypeconverter, klasse og fortæller stivere, hvordan til at konvertere miljø på en kæde og omvendt af overordnede to metoder, convertfromstring(), og converttostring(),.lad os nu registrere det konverter, før vi os i vores anvendelse.der er to måder at registrere en katalysator.hvis konverteren, kun vil blive brugt i en særlig aktion, så ville du være nødt til at skabe en ejendom fil må betegnes som "(aktion klasse] - converstion. egenskaber, så vi i vort tilfælde skabe filen, systemdetails-converstion.properties, med følgende registrering entery:, miljø = com.tutorialspoint.struts2.environmentconverter, ovenstående eksempel," miljø "er navnet på den ejendom i, systemdetails.java, klasse, og vi fortæller stivere til at bruge, environmentconverter, for omstilling til og fra denne ejendom.vi er imidlertid ikke gøre dette, men at vi i stedet skal registrere det konverter globalt, således at den kan anvendes i ansøgningen.for at gøre det, skabe en ejendom filen, xwork-conversion.properties i, web-inf /klasser, folder med følgende linje:, com.tutorialspoint.struts2.environment = \\ com.tutorialspoint.struts2.environmentconverter, det blot registre konverteren globalt, så går automatisk kan gøre konvertering, hver gang det støder på en genstand af typen, miljø.nu, hvis du skal indsamle og gentagelse i programmet, vil du få en bedre effekt som følger:,,, selvfølgelig, nu resultat er bedre, som betyder, at vores tid konverter fungerer fint.dette er, hvordan du kan skabe flere konvertere og registrere dem til brug som pr dine krav.

System Info
System Info



Previous:
Next Page: