Odpovídáte na názor ke článku Ujorm3: nový lehký ORM pro JavaBeans a Records.
Je pravda, že QueryDSL SQL je architektonicky frameworku Ujorm3 podobný. Obě knihovny obcházejí komplexní standard JPA, operují těsně nad úrovní JDBC a využívají silnou typovou kontrolu nad databázovým schématem. Rozdíl spočívá v jejich primárním zaměření. QueryDSL SQL exceluje v typové bezpečnosti a umožňuje sestavování složitých dotazů čistě přes Java API. Ujorm3 naproti tomu maximalizuje propustnost a minimalizuje paměťovou alokaci (tlak na Garbage Collector), čehož dosahuje (mimo jiné) delegováním složitějších relačních dotazů s JOINy na nativní SQL.
Zvolená architektura se odráží v naměřeném výkonu. Jak ukazují výsledky doplněného benchmarku, Ujorm3 je při hromadném zápisu (Batch Insert) téměř čtyřikrát rychlejší a generuje zhruba čtvrtinovou zátěž na paměť ve srovnání s QueryDSL. Výrazný náskok Ujorm3 se potvrzuje i při dynamické aktualizaci dat (Random Update), kde QueryDSL vyžaduje více než dvojnásobný čas i paměťovou alokaci. Při čtení dat s relacemi (Read With Relations) dosahují obě knihovny srovnatelných výsledků, přičemž Ujorm3 zůstává mírně rychlejší a úspornější.
Z pohledu programátorské ergonomie Ujorm3 zásadně redukuje množství opakujícího se rutinního kódu. Na rozdíl od QueryDSL SQL, kde se každý příkaz musí explicitně sestavit (včetně ručního výběru sloupců pro částečný UPDATE), poskytuje Ujorm3 vestavěné CRUD operace a automatickou detekci změn (dirty checking) pomocí snapshotů entit. Zatímco QueryDSL SQL nabízí vývojáři stoprocentní kontrolu nad strukturou dotazu přímo v Javě bez psaní textových řetězců, Ujorm3 přináší vyšší produktivitu a hardwarovou efektivitu při běžných databázových operacích.
Postřehy ze světa open-source.
Přečteno 36 816×
Přečteno 23 163×
Přečteno 19 066×
Přečteno 17 793×
Přečteno 16 480×