Forskel Mellem JDO og værdiobjekt

Anonim

JDO vs Value Object

JDO er en Java persistens teknologi, der kan bruges til at lagre POJO Almindelige gamle Java-objekter) i databaser uden at forstå de underliggende implementeringer af forskellige datalager. Værdiobjekt (også kendt som Dataoverføringsobjekt) er et abstrakt designmønster, der introducerer begrebet en simpel dataholder med det formål at overføre data mellem flere lag og tier.

Hvad er JDO?

JDO (Java Data Objects) giver en mekanisme til at levere persistens til Java-objekter og databaseadgang. JDO er meget gennemsigtig, fordi det giver Java applikationsudviklere adgang til de underliggende data uden at skulle skrive nogen kode, der er specifik for databaser. JDO kan bruges på tværs af flere niveauer, herunder Java Standard Edition, Web-tier og applikationsservere. JDO API er et alternativ til anden persistens (vedligeholdelse af objekter efter programmets abort) af Java-objekter som Serialization, JDBC (Java DataBase Connectivity) og EJB CMP (Enterprise JavaBeans Architecture Container Managed Persistence). JDO bruger XML og forbedring af bytecode. Den største fordel ved at bruge JDO API er, at de kan gemme data uden behov for at lære et nyt forespørgsels sprog som SQL (som afhænger af typen af ​​datalagring). JDO er meget nem at bruge, da udviklere kun kan fokusere på deres domæneobjektmodel. Ikke alene dette optimerer JDO koden i sig selv i henhold til datatilgang. Da JDO API ikke er strenge på typen af ​​datalager, kan samme interface bruges af java applikationsudviklerne til at gemme java objekter til ethvert datalager inklusive relationsdatabase, objektdatabase eller XML. JDO er meget bærbar, fordi ændring eller genkompilering ikke er nødvendig for at køre på forskellige leverandør implementeringer.

Hvad er værdiobjekt?

Værdiobjekt også kendt som Dataoverføringsobjekter (DTO) er et simpelt abstrakt designmønster, der beskæftiger sig med en databeholder for at holde data med det formål at overføre data mellem lag og tier. Selvom det mest nøjagtige udtryk for dette mønster er Dataoverføringsobjektet, skyldes en fejl i Core J2EEs første version, blev den introduceret som Value Object. Selv om denne fejl blev korrigeret i 2. udgave, blev dette navn populært og bruges stadig stærkt i stedet for Dataoverføringsobjekt (men det skal bemærkes, at det korrekte udtryk er Dataoverføringsobjekt). DTO-designmønster bruges sammen med enhedsbønner, JDBC og JDO til at rette op på problemer, der opstår med hensyn til isolation og transaktioner i virksomhedsapplikationer. Det er vigtigt at bemærke, at disse kun er enkle dataindehavere, der bruges til at overføre data mellem klienten og databasen, og de giver ikke nogen form for vedholdenhed.DTO tjener formålet med at fungere som serialiserbare objekter i traditionel EJB (som enhedsbønner før 3. 0 er ikke serialiserbare). I en separat samlingsfase defineret af DTO erhverves alle data, der anvendes af visningen, og marshaleres før frigivelsen af ​​kontrollen til præsentationslaget.

Hvad er forskellen mellem JDO og Value Object?

JDO er faktisk en persistensteknologi, der bruges til at gemme Java-objekter i databaser, der giver udviklerne bekvemmelighed ved at håndtere alle detaljeringsniveau detaljer og give udviklerne mulighed for at fokusere på ikke-databasespecifik kodning. Men værdiobjektet repræsenterer et abstrakt designmønster (ikke en teknologi), der giver en generisk dataholder kendt som et dataoverføringsobjekt, som kan holde data med det formål at overføre mellem klient og databaser. JDO giver mulighed for vedvarende dataposter, mens Value Object kun beskæftiger sig med at holde data midlertidigt i dataoverførselsperioden. Med andre ord giver Value Object ikke vedholdenhed.