Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 13726|Risposta: 0

[Fonte] le note di mybatis sono annotate usando l'interfaccia Mapper

[Copiato link]
Pubblicato su 16/01/2019 13:00:53 | | | |
1. Metodi di mappatura supportati da mybatis

I metodi di mappatura supportati da mybatis includono file mapper.xml basati su XML e classi di interfaccia mapper basate su Java.
Ci sono quattro principali annotazioni dei metodi dell'interfaccia: @Insert, @Delete, @Update e @Select

2. Come mappare usando annotazioni di interfaccia

I seguenti esperimenti si basano tutti su tabelle t_user e sono strutturati come segue:

2.1 Aumento @Insert

Fondamentalmente ci sono tre schemi per questo: designazione manuale (livello applicativo), chiave primaria auto-aggiuntiva (tabella singola del livello dati) e chiave primaria di selezione (tabella multipla del livello dati).

1. Specificare manualmente la chiave primaria al livello applicativo

Il metodo manuale non tratta la chiave primaria in modo diverso e assegnerà un valore alla chiave primaria quando il livello applicativo genera l'oggetto prima dell'inserimento, che non differisce dal campo normale quando inserito.

Nell'esempio sopra, mybatis non sa quale campo sia la chiave primaria e id sia il campo della chiave primaria, ma non viene trattato diversamente.

Nota che il metodo #{username} serve a usare User come contesto corrente, così che accedendo agli attributi di User, puoi scrivere direttamente il nome dell'attributo.

2. La tabella aggiunge la chiave primaria

La chiave primaria auto-incrementante corrisponde al riempimento della chiave primaria nella configurazione XML, un esempio semplice:

Usa Option per corrispondere alle proprietà del set di tag select in XML, userGeneratordKeys per indicare che vuoi usare una chiave primaria auto-incrementante, e keyProperty per specificare il nome del campo del campo della chiave primaria.

La chiave primaria auto-incrementante utilizza le caratteristiche auto-incrementanti del database sottostante.

3. Selezionare la tonalità primaria

Seleziona la chiave primaria per generare un valore dal livello dati e usa questo valore come valore della chiave primaria.


2.2 Elimina @Delete

Quando elimini, basta scrivere la condizione nel valore dell'annotazione @Delete e restituire un tipo int come numero di record che sono stati cancellati con successo.


2.3 Cambiamento @Update

Quando modifichi, basta scrivere l'istruzione SQL nel valore del @Update e restituire un tipo int per indicare il numero di linee di record modificate.


2.4 Controlla @Select

Interrogare è un po' più complicato, perché la query riguarda come impostare i campi trovati sull'oggetto, e di solito ci sono tre modi:

1. Specificare manualmente un alias nell'istruzione SQL per corrispondere

Quando scrivi istruzioni SQL, assegna manualmente un alias a ogni campo per corrispondere agli attributi dell'oggetto, il che è adatto in situazioni in cui il nome del campo della tabella e quello dell'attributo dell'oggetto sono molto diversi e non ci sono molti campi della tabella.


2. Utilizzare la trasformazione automatica della gobba sottolineata di mybatis

mybatis ha un'opzione chiamata mapUnderscoreToCamelCase che si applica quando il nome del campo nella tabella è lo stesso del nome dell'attributo dell'oggetto, ma la differenza tra sottolineamento e scrittura a gobba.

Dopo aver configurato mapUnderscoreToCamelCase, mybatis cercherà di convertire il sottopunteggio in un "hump" quando imposta i dati trovati nel ResultSet sull'oggetto, e poi unirà il set davanti per impostare gli attributi.

Attiva la conversione:




Poi chiedi:

Guardando il risultato stampato, birth_day attributi vengono inseriti nell'oggetto:



3. Usa ResultMap

Se il nome del campo della tabella e quello dell'attributo dell'oggetto non sono molto simili, e ci sono molti campi nella tabella, ResultMap dovrebbe essere usato per l'adattamento.


@Results corrisponde al ResultMap in XML, e puoi specificare un id per esso, che può essere usato per fare riferimento altrove, ad esempio per fare riferimento ai risultati sopra:

Usa @ResultMap per fare riferimento a un ResultMap esistente, che può essere definito in Java usando annotazioni @Results o in XML usando i tag resultMap.

2.5 Codice di esempio

User.java


UserMapper.java

3. Sommario

Vantaggi dell'uso delle annotazioni di interfaccia:

1. È più comodo e veloce scrivere istruzioni di mappatura

Svantaggi nell'uso di annotazioni di interfaccia:

1. È adatto a configurazioni relativamente semplici e l'interfaccia non può essere eseguita quando è troppo complicata.

2. Non posso usare SQL dinamico, è un po' di cattivo gusto.






Precedente:Demon Spirit Summon V4.1.8 viene usato in modo discreto
Prossimo:Kirin Article Signality Detection Tool v2.0 (rimuovi le informazioni di contatto dell'autore)
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com