Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 13726|Odpoveď: 0

[Zdroj] Poznámky mybatis sú anotované pomocou rozhrania Mapper

[Kopírovať odkaz]
Zverejnené 16. 1. 2019 13:00:53 | | | |
1. Mapovacie metódy podporované mybatis

Mapovacie metódy podporované mybatis zahŕňajú mapper.xml súbory založené na XML a triedy rozhrania mapper založené na Jave.
Existujú štyri hlavné anotácie metód rozhrania: @Insert, @Delete, @Update a @Select

2. Ako mapovať pomocou anotácií rozhrania

Nasledujúce experimenty sú všetky založené na t_user tabuľkách a sú štruktúrované nasledovne:

2.1 Zvýšenie @Insert

V podstate existujú tri spôsoby, a to manuálne označovanie (aplikačná vrstva), samo-pridávajúci primárny kľúč (data layer single table) a výber primárneho kľúča (data layer multiple table).

1. Manuálne špecifikovať primárny kľúč na aplikačnej vrstve

Manuálna metóda primárny kľúč nerieši inak a priradí mu hodnotu, keď aplikačná vrstva vygeneruje objekt pred vložením, čo sa nelíši od bežného poľa pri vložení.

V uvedenom príklade mybatis nevie, ktoré pole je primárny kľúč, a id je pole primárneho kľúča, ale nepristupuje sa k nemu inak.

Upozorňujeme, že metóda #{username} používa User ako aktuálny kontext, takže pri prístupe k atribútom User môžete priamo zapísať názov atribútu.

2. Tabuľka pridáva primárny kľúč

Samo-inkrementujúci primárny kľúč zodpovedá spätnému vyplneniu primárneho kľúča v XML konfigurácii, jednoduchý príklad:

Použite Option, aby zodpovedal vlastnostiam sady tagov select v XML, userGeneratordKeys na označenie, že chcete použiť samo-inkrementujúci primárny kľúč, a keyProperty na určenie názvu poľa primárneho kľúča.

Samoinkrementujúci primárny kľúč využíva samoinkrementačné vlastnosti základnej databázy.

3. Vyberte primárny kľúč

Vyberte primárny kľúč na vygenerovanie hodnoty z dátovej vrstvy a použite túto hodnotu ako hodnotu primárneho kľúča.


2.2 Vymazať @Delete

Pri mazaní jednoducho napíšte podmienku do hodnoty @Delete anotácie a vráťte typ int ako počet úspešne vymazaných záznamov.


2.3 Zmena @Update

Pri úprave stačí napísať SQL príkaz do hodnoty @Update a vráť typ int na označenie počtu upravených riadkov záznamu.


2.4 Skontrolujte @Select

Dotazovanie je trochu zložitejšie, pretože dotaz zahŕňa, ako nastaviť nájdené polia k objektu, a zvyčajne existujú tri spôsoby:

1. Manuálne zadajte alias v SQL príkaze, aby zodpovedal

Pri písaní SQL príkazov manuálne priraďte každému poliu alias, aby zodpovedal atribútom objektu, čo je vhodné v situáciách, keď sa názov poľa tabuľky a názov atribútu objektu veľmi líšia a nie je veľa polí v tabuľke.


2. Použite automatickú transformáciu podčiarknutého hrbu mybatis

mybatis má možnosť nazvanú mapUnderscoreToCamelCase, ktorá sa uplatňuje, keď je názov poľa v tabuľke rovnaký ako názov atribútu objektu, ale rozdiel v zápise podčiarknutia a hrbu.

Po konfigurácii mapUnderscoreToCamelCase sa mybatis pokúsi previesť podčiarknutie na hrb pri nastavovaní dát nájdených vo ResultSet na objekt a potom zošíva množinu pred objektom, aby nastavil atribúty.

Zapnite konverziu:




Potom dotaz:

Pri pohľade na vytlačený výsledok sa do objektu naplnia birth_day atribútov:



3. Použite ResultMap

Ak názov poľa tabuľky a atribút objektu nie sú veľmi totožné a v tabuľke je veľa polí, na adaptáciu by sa mal použiť ResultMap.


@Results zodpovedá ResultMap v XML a môžete pre ňu určiť ID, ktoré môžete použiť na odkaz inde, napríklad na odkazovanie na vyššie uvedené výsledky:

Použite @ResultMap na odkazovanie na existujúci ResultMap, ktorý je možné definovať v Jave pomocou @Results anotácií alebo v XML pomocou tagov resultMap.

2.5 Vzorový kód

User.java


UserMapper.java

3. Zhrnutie

Výhody používania anotácií rozhrania:

1. Je pohodlnejšie a rýchlejšie písať mapovacie výroky

Nevýhody používania anotácií rozhrania:

1. Je vhodný pre relatívne jednoduché konfigurácie a rozhranie nie je možné, ak je príliš zložité.

2. Nemôžem používať dynamické SQL, trochu nevkusné.






Predchádzajúci:Demon Spirit Summon V4.1.8 sa používa nenápadne
Budúci:Kirin Article Detection Detection Tool v2.0 (odstrániť kontaktné údaje autora)
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com