JDO vs väärtusobjekt
JDO on Java püsivustehnoloogia, mida saab kasutada POJO (tavaliste vanade Java objektide) salvestamiseks andmebaasidesse, ilma et oleks vaja mõista erinevate andmehoidlate aluseks olevaid rakendusi. Väärtusobjekt (tuntud ka kui andmeedastusobjekt) on abstraktne kujundusmuster, mis tutvustab lihtsa andmevaldaja mõistet andmete edastamiseks mitme kihi ja astme vahel.
Mis on JDO?
JDO (Java Data Objects) pakub mehhanismi püsivuse tagamiseks Java objektidele ja andmebaasidele juurdepääsu saamiseks. JDO on väga läbipaistev, kuna see võimaldab Java-rakenduste arendajatel juurdepääsu alusandmetele ilma, et nad peaksid andmebaasidele spetsiifilisi koode kirjutama. JDO-d saab kasutada mitmel astmel, sealhulgas Java Standard Edition, Web-tier ja rakendusserverid. JDO API on alternatiiv muudele Java objektide püsivusele (objektide hoidmine pärast programmi katkestamist) nagu Serialization, JDBC (Java DataBase Connectivity) ja EJB CMP (Enterprise JavaBeans architecture Container Managed Püsivus). JDO kasutab XML-i ja baitkoodi täiustamist. JDO API kasutamise peamine eelis on see, et nad saavad andmeid salvestada ilma vajaduseta õppida uut päringkeelt, näiteks SQL (mis sõltub andmesalvestuse tüübist). JDO-d on väga lihtne kasutada, kuna arendajad saavad keskenduda ainult oma domeeniobjektide mudelile. Ja mitte ainult, JDO optimeerib koodi ise vastavalt andmetele juurdepääsule. Kuna JDO API ei ole andmesalvestuse tüübi suhtes range, saavad Java rakenduste arendajad kasutada sama liidest java objektide salvestamiseks mis tahes andmehoidlasse, sealhulgas relatsiooniandmebaasi, objektide andmebaasi või XML-i. JDO on väga kaasaskantav, kuna modifitseerimist või uuesti komplekteerimist pole tarnija eri rakendustes kasutamiseks vaja.
Mis on väärtusobjekt?
Väärtusobjekt, mida tuntakse ka kui andmeedastusobjektid (DTO), on lihtne abstraktne kujundusmuster, mis tegeleb andmemahuga andmete hoidmiseks andmete edastamiseks kihtide ja astmete vahel. Ehkki selle mustri kõige täpsem termin on andmeedastusobjekt, tutvustati Core J2EE esimeses versioonis tehtud vea tõttu seda väärtuse objektina. Ehkki see viga parandati 2. väljaandes, sai see nimi populaarseks ja seda kasutatakse andmeedastusobjekti asemel endiselt palju (kuid tuleb märkida, et õige termin on andmeedastusobjekt). DTO-kujundusskeemi kasutatakse üksuseubade, JDBC ja JDO korral ettevõtte probleemide lahendamiseks, mis tekivad seoses ettevõtte rakendustega eraldamise ja tehingutega. Oluline on märkida, et need on vaid lihtsad andmevaldajad, mida kasutatakse andmete edastamiseks kliendi ja andmebaasi vahel, ja need ei taga mingisugust püsivust. DTO eesmärk on toimida Serialiseeritavate objektidena traditsioonilises EJB-s (kuna üksuse oad enne 3.0 pole seeriaviisilised). DTO määratletud eraldi monteerimisfaasis omandatakse ja vaadeldakse kõiki vaate jaoks kasutatavaid andmeid enne juhtseadme vabastamist esitluskihiks.
Mis vahe on JDO ja väärtusobjekti vahel??
JDO on tegelikult püsivustehnoloogia, mida kasutatakse Java objektide andmebaasidesse salvestamiseks, mis pakub arendajatele mugavust, käsitledes kõiki rakendustaseme üksikasju ja võimaldades arendajatel keskenduda mitte-andmebaasispetsiifilisele kodeerimisele. Väärtusobjekt esindab aga abstraktset kujundusmustrit (mitte tehnoloogiat), mis pakub andmeedastusobjektina tuntud üldist andmevaldajat, mis hoiab andmeid kliendi ja andmebaaside vahel edastamise eesmärgil. JDO pakub püsivaid andmeühikuid, samas kui Value Object tegeleb andmete ajutise säilitamisega andmeedastuse ajal. Teisisõnu, väärtusobjekt ei taga püsivust.