Maison > Article > Tutoriel système > Comment utiliser MyBatis ResultMap pour la déduplication ?
Présentation | Parfois, MyBatis est utilisé pour interroger l'ensemble de résultats et l'instruction SQL imprimée est exécutée sur le client de base de données. Par exemple, le résultat est 10, mais MyBatis ne renvoie que 4 données. Pourquoi ? |
Le ResultMap de MyBatis utilise l'identifiant comme clé primaire de la carte par défaut. Lorsque l'identifiant est le même, il sera considéré comme le même enregistrement, que les autres champs soient différents ou non. Alors quand on veut que MyBatis ne supprime pas les doublons, comment fait-on ? Ajoutez simplement un pseudo identifiant comme identifiant dans la définition POJO. Tel que :
Ajouter une "pseudo colonne" dans la classe table principale (User.java), la fonction est : ne pas supprimer les doublons UserMapper.xml Exécuter les résultatsPrincipe : Cette instruction SQL génère une colonne de données uniques, telles que le numéro de ligne ; en utilisant cette colonne comme clé primaire, MyBatis détecte que la clé primaire n'est pas répétée, donc plusieurs enregistrements de données sont renvoyés.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!