Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 13726|Svar: 0

[Kilde] mybatis-noter annoteres via Mapper-grænsefladen

[Kopier link]
Opslået på 16/01/2019 13.00.53 | | | |
1. Kortlægningsmetoder understøttet af mybatis

De mappingmetoder, som mybatis understøtter, inkluderer mapper.xml filer baseret på xml og mapper-interfaceklasser baseret på Java.
Der findes fire hovedannotationer af interface-metoder: @Insert, @Delete, @Update og @Select

2. Hvordan man kortlægger ved hjælp af interface-annoteringer

Følgende eksperimenter er alle baseret på t_user tabeller og er struktureret som følger:

2.1 Forøgelse @Insert

Der findes grundlæggende tre metoder til dette, nemlig manuel betegnelse (applikationslag), selvtilføjende primærnøgle (datalag, enkelt tabel) og valg af primærnøgle (datalag, flere tabeller).

1. Angiv manuelt primærnøglen på applikationslaget

Den manuelle metode behandler ikke primærnøglen anderledes og vil give primærnøglen en værdi, når applikationslagget genererer objektet før indsættelse, hvilket ikke adskiller sig fra det normale felt, når det indsættes.

I eksemplet ovenfor ved mybatis ikke, hvilket felt der er primærnøglen, og id er primærnøglefeltet, men det behandles ikke anderledes.

Bemærk, at #{username}-metoden er at bruge Bruger som den aktuelle kontekst, så når du tilgår Brugerens attributter, kan du direkte skrive attributnavnet.

2. Tabellen tilføjer primærnøglen

Den selvinkrementerende primærnøgle svarer til primærnøgle-backfillen i XML-konfigurationen, et simpelt eksempel:

Brug Option til at svare til egenskaberne for select-tag-sættet i XML, userGeneratordKeys for at angive, at du vil bruge en selv-inkrementerende primærnøgle, og keyProperty for at angive feltnavnet på det primære nøglefelt.

Den selv-inkrementerende primærnøgle bruger de selv-inkrementerende funktioner i den underliggende database.

3. Vælg primærnøglen

Vælg primærnøglen for at generere en værdi fra datalaget og brug denne værdi som værdien af primærnøglen.


2.2 Slet @Delete

Når du sletter, skriver du blot betingelsen i værdien af @Delete-annotationen og returnerer en int-type som antallet af poster, der er blevet slettet med succes.


2.3 Ændring @Update

Når du ændrer den, skal du blot skrive SQL-sætningen i værdien af @Update og returnere en int-type, der angiver antallet af ændrede postlinjer.


2.4 Tjek @Select

Forespørgslen er lidt mere kompliceret, fordi forespørgslen handler om, hvordan man sætter de fundne felter til objektet, og der er som regel tre måder:

1. Angiv manuelt et alias i SQL-udsagnet, så det matcher

Når du skriver SQL-sætninger, tildeles der manuelt et alias til hvert felt, så det matcher objektets attributter, hvilket er velegnet i situationer, hvor tabelfeltets navn og objektattributnavnet er meget forskellige, og der ikke er mange tabelfelter.


2. Brug mybatis' automatiske understregnings-pukkel-transformation

mybatis har en mulighed kaldet mapUnderscoreToCamelCase, som gælder, når feltnavnet i tabellen er det samme som objektets attributnavn, men forskellen i underscore og pukkelskrift.

Efter at have konfigureret mapUnderscoreToCamelCase vil mybatis forsøge at konvertere underscoren til en pukkel ved at sætte dataene i ResultSet til objektet, og derefter sy sættet foran for at sætte attributterne.

Tænd for konverteringen:




Så forespørgsler:

Når man ser på det udskrevne resultat, birth_day attributter indbygges i objektet:



3. Brug ResultMap

Hvis feltnavnet på tabellen og attributnavnet på objektet ikke er meget ens, og der er mange felter i tabellen, bør ResultMap bruges til tilpasning.


@Results svarer til ResultMap i XML, og du kan angive et id for det, som kan bruges til at referere til det andre steder, for eksempel til at referere til ovenstående Results:

Brug @ResultMap til at referere til en eksisterende ResultMap, som kan defineres i Java ved hjælp af @Results annotationer eller i XML med resultMap-tags.

2.5 Eksempelkode

User.java


UserMapper.java

3. Resumé

Fordele ved at bruge interface-annotationer:

1. Det er mere bekvemt og hurtigt at skrive mapping-sætninger

Ulemper ved at bruge interface-annotationer:

1. Den er egnet til relativt simple konfigurationer, og grænsefladen kan ikke udføres, når den er for kompliceret.

2. Ude af stand til at bruge dynamisk SQL, lidt smagløst.






Tidligere:Demon Spirit Summon V4.1.8 bruges på en afdæmpet måde
Næste:Kirin Artikel Originalitetsdetektionsværktøj v2.0 (fjern forfatterens kontaktoplysninger)
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com