Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 13726|Odpověď: 0

[Zdroj] Poznámky mybatis jsou anotovány pomocí rozhraní Mapper

[Kopírovat odkaz]
Zveřejněno 16.01.2019 13:00:53 | | | |
1. Mapovací metody podporované mybatis

Mapovací metody podporované mybatis zahrnují mapper.xml soubory založené na xml a třídy rozhraní mapper založené na Javě.
Existují čtyři hlavní anotace metod rozhraní: @Insert, @Delete, @Update a @Select

2. Jak mapovat pomocí anotací rozhraní

Následující experimenty jsou všechny založeny na t_user tabulkách a jsou strukturovány následovně:

2.1 Zvýšení @Insert

V podstatě existují tři způsoby, jak to uskutečnit: ruční označení (aplikační vrstva), samopřičítající primární klíč (datová vrstva jedna tabulka) a výběr primárního klíče (datová vrstva vícenásobných tabulek).

1. Ručně zadejte primární klíč na aplikační vrstvě

Manuální metoda primární klíč neřeší jinak a při generování objektu aplikační vrstvou před vložením přidělí hodnotu, která se neliší od běžného pole při vložení.

V uvedeném příkladu mybatis neví, které pole je primární klíč a id je pole primárního klíče, ale není s ním zacházeno jinak.

Všimněte si, že metoda #{username} používá uživatele jako aktuální kontext, takže při přístupu k atributům uživatele můžete přímo napsat název atributu.

2. Tabulka přidává primární klíč

Samo-inkrementující primární klíč odpovídá primárnímu klíčovému backfillu v XML konfiguraci, jednoduchý příklad:

Použijte Option, aby odpovídala vlastnostem sady tagů select v XML, userGeneratordKeys k označení, že chcete použít samo-inkrementující primární klíč, a keyProperty pro určení názvu pole primárního klíče.

Samo-inkrementující primární klíč využívá samoinkrementující vlastnosti základní databáze.

3. Vyberte primární klíč

Vyberte primární klíč pro generování hodnoty z datové vrstvy a použijte tuto hodnotu jako hodnotu primárního klíče.


2.2 Smazat @Delete

Při mazání stačí napsat podmínku do hodnoty @Delete anotace a vrátit typ int jako počet záznamů, které byly úspěšně smazány.


2.3 Změna @Update

Při úpravě stačí napsat SQL příkaz do hodnoty @Update a vrátit typ int, který označí počet upravených řádků záznamu.


2.4 Zkontrolujte @Select

Dotazování je trochu složitější, protože dotaz se týká, jak nastavit nalezená pole objektu, a obvykle existují tři způsoby:

1. Ručně zadat alias v SQL příkazu, aby odpovídal

Při psaní SQL příkazů ručně přiřaďte každému poli alias, aby odpovídal atributům objektu, což je vhodné pro situace, kdy se název pole tabulky a název atributu objektu velmi liší a pole v tabulce není mnoho.


2. Použijte automatickou transformaci podtržení hrbu od mybatis

mybatis má možnost nazvanou mapUnderscoreToCamelCase, která se uplatní, když je název pole v tabulce stejný jako název atributu objektu, ale rozdíl v podtržení a zápisu v hrbu.

Po konfiguraci mapUnderscoreToCamelCase se mybatis pokusí převést podtržení na hrb při nastavení dat nalezených ve ResultSet na objekt a poté sešívá množinu před objektem, aby nastavil atributy.

Zapněte konverzi:




Pak dotaz:

Při pohledu na vytištěný výsledek jsou do objektu vloženy birth_day atributy:



3. Použijte ResultMap

Pokud název pole tabulky a název atributu objektu nejsou příliš totožné a v tabulce je mnoho polí, měl by být ResultMap použit pro adaptaci.


@Results odpovídá ResultMapě v XML a můžete pro ni zadat ID, které lze použít k odkazu jinde, například k odkazu na výše uvedené výsledky:

Použijte @ResultMap k odkazování na existující ResultMap, kterou lze definovat v Javě pomocí @Results anotací nebo v XML pomocí tagů resultMap.

2.5 Ukázkový kód

User.java


UserMapper.java

3. Shrnutí

Výhody používání anotací rozhraní:

1. Je pohodlnější a rychlejší psát mapovací příkazy

Nevýhody používání anotací rozhraní:

1. Je vhodný pro relativně jednoduché konfigurace a rozhraní nelze provést, pokud je příliš složité.

2. Nemožnost používat dynamické SQL, trochu nevkusné.






Předchozí:Démonický duch Summon V4.1.8 je použit v nenápadném stylu
Další:Nástroj pro detekci originality článku Kirin v2.0 (odstraňte kontaktní údaje autora)
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com