Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 13726|Yanıt: 0

[Kaynak] mybatis notları Mapper arayüzü kullanılarak notlanır

[Bağlantıyı kopyala]
Yayınlandı 16.01.2019 13:00:53 | | | |
1. Mybatis tarafından desteklenen eşleme yöntemleri

Mybatis tarafından desteklenen eşleme yöntemleri, xml tabanlı mapper.xml dosyalar ve java tabanlı haritalayıcı arayüz sınıflarını içerir.
Dört ana arayüz yöntemi açıklaması vardır: @Insert, @Delete, @Update ve @Select

2. Arayüz açıklamaları kullanılarak nasıl haritalanır

Aşağıdaki deneylerin tamamı t_user tabloya dayanır ve şu şekilde yapılandırılmıştır:

2.1 Artır @Insert

Bunun için temelde üç şema vardır: manuel tanımlama (uygulama katmanı), kendi kendine ekleme birincil anahtar (veri katmanı tek tablo) ve birincil anahtar seçme (veri katmanı çoklu tablo).

1. Uygulama katmanında birincil anahtarı manuel olarak belirtin

Manuel yöntem birincil anahtarı farklı ele almaz ve uygulama katmanı nesneyi eklemeden önce oluşturduğunda birincil anahtara bir değer verir; bu değer eklendiğinde normal alandan farklı değildir.

Yukarıdaki örnekte, mybatis hangi alanın birincil anahtar olduğunu bilmez ve id birincil anahtar alandır, ancak farklı şekilde ele alınmaz.

#{username} yönteminin, Kullanıcının niteliklerine erişirken doğrudan öznitelik adını yazabilmeniz için mevcut bağlam olarak Kullanıcı kullanmaktır.

2. Tablo birincil anahtarı ekler

Kendi kendine artan birincil anahtar, XML yapılandırmasındaki birincil anahtar geri doldurmaya karşılık gelir, basit bir örnek:

XML'deki select etiketi setinin özelliklerine karşılık gelmek için Option, kendi kendine artan birincil anahtar kullanmak istediğinizi belirtmek için userGeneratordKeys ve ana anahtar alanının alan adını belirtmek için keyProperty kullanın.

Kendi kendine artan birincil anahtar, temel veritabanının kendiliğinden artan özelliklerini kullanır.

3. Ana anahtarı seçin

Veri katmanından bir değer oluşturmak için birincil anahtarı seçin ve bu değeri birincil anahtarın değeri olarak kullanın.


2.2 Sil @Delete

Silerken sadece @Delete annotasyonunun değerine koşulu yazın ve başarıyla silinen kayıt sayısı olarak int türü döndürün.


2.3 Değişiklik @Update

Değişiklik yaparken, sadece SQL ifadesini @Update değerine yazın ve değiştirilen kayıt satırlarının sayısını belirtmek için bir int türü döndürün.


2.4 Kontrol @Select

Sorgulama biraz daha karmaşıktır, çünkü sorgu bulunan alanların nesneye nasıl ayarlanacağını içerir ve genellikle üç yol vardır:

1. SQL ifadesinde eşleşecek bir takma adı manuel olarak belirtin

SQL ifadeleri yazarken, her alana nesnenin öznitelikleriyle eşleşecek şekilde manuel olarak bir alias atayın; bu, tablo alanı adı ile nesne öznitelik adının çok farklı olduğu ve çok fazla tablo alanı olmadığı durumlar için uygundur.


2. Mybatis'in otomatik alt çizim hump dönüşümünü kullanın

mybatis'in mapUnderscoreToCamelCase adlı bir seçeneği vardır; bu, tablodaki alan adı nesnenin öznitelik adıyla aynı ama alt çizgi ve hump yazısı arasındaki farkı varsa geçerlidir.

mapUnderscoreToCamelCase yapılandırıldıktan sonra, mybatis ResultSet'te bulunan verileri nesneye ayarlarken alt çizgiyi bir hump haline dönüştürmeye çalışır ve ardından önündeki seti dikişleyerek öznitelikleri ayarlar.

Dönüşümü açın:




Sonra sorgu yapın:

Yazdırılmış sonuca bakıldığında, nesneye birth_day öznitelik yerleştirilmiştir:



3. ResultMap'i kullanın

Eğer tablonun alan adı ile nesnenin öznitelik adı çok farklı değilse ve tabloda birçok alan varsa, uyarlama için ResultMap kullanılmalıdır.


@Results, XML'deki ResultMap'e karşılık gelir ve bunun için bir id belirtebilirsiniz; bu da yukarıdaki Sonuçlara referans vermek için başka yerlerde referans vermek için kullanılabilir:

@ResultMap kullanarak mevcut bir ResultMap'e referans verin; bu Java ile @Results annotasyonları veya XML ile resultMap etiketleriyle tanımlanabilir.

2.5 Örnek Kod

User.java


UserMapper.java

3. Özet

Arayüz açıklamalarının avantajları:

1. Eşleme ifadeleri yazmak daha pratik ve hızlıdır

Arayüz açıklamalarının dezavantajları:

1. Nispeten basit yapılandırmalar için uygundur ve arayüz çok karmaşık olduğunda yapılamaz.

2. Dinamik SQL kullanamıyorum, biraz zevksiz.






Önceki:Demon Spirit Summon V4.1.8 ise sakin bir şekilde kullanılır
Önümüzdeki:Kirin Makale Orijinalliği Tespit Aracı v2.0 (yazar iletişim bilgilerini kaldır)
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com