Maison Java javaDidacticiel Implémenter le mappage ORM basé sur Spring Boot et MyBatis Plus

Implémenter le mappage ORM basé sur Spring Boot et MyBatis Plus

Jun 22, 2023 pm 09:27 PM
spring boot orm映射 mybatis plus

Dans le processus de développement d'applications Web Java, la technologie de mappage ORM (Object-Relational Mapping) est utilisée pour mapper les données relationnelles de la base de données avec des objets Java, facilitant ainsi l'accès et l'exploitation des données par les développeurs. En tant que l'un des frameworks de développement Web Java les plus populaires à l'heure actuelle, Spring Boot a fourni un moyen d'intégrer MyBatis, et MyBatis Plus est un framework ORM étendu sur la base de MyBatis. Cet article explique comment utiliser Spring Boot et MyBatis Plus pour implémenter le mappage ORM.

1. Spring Boot intègre MyBatis Plus
Utiliser MyBatis Plus dans Spring Boot est très simple, il suffit d'ajouter la dépendance de MyBatis Plus à maven.

<dependency>
  <groupId>com.baomidou</groupId>
  <artifactId>mybatis-plus-boot-starter</artifactId>
  <version>3.4.2</version>
</dependency>
Copier après la connexion

En même temps, configurez les paramètres liés à MyBatis Plus dans application.properties ou application.yml, comme indiqué ci-dessous :

#数据库配置
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/mybatis_plus?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=123456
#MyBatis Plus配置
mybatis.configuration.cache-enabled=false
mybatis.mapper-locations=classpath:mapper/*.xml
Copier après la connexion

Parmi eux, le nom de classe du pilote, l'URL, le nom d'utilisateur et le mot de passe sont des configurations liées à la base de données, et mapper-locations est le chemin où se trouve le fichier de configuration de mappage SQL de MyBatis Plus.

2. Définir les classes d'entités et les interfaces Mapper
Comme MyBatis, l'utilisation de MyBatis Plus nécessite également de définir des classes d'entités et des interfaces Mapper. Ce qui suit prend une simple table User comme exemple pour définir la classe d'entité correspondante et l'interface Mapper.

  1. Définir des classes d'entités
@Getter
@Setter
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class User {

    private Integer id;
    private String name;
    private Integer age;
    private String email;
    private Integer gender;
    private LocalDateTime createTime;
    private LocalDateTime updateTime;

}
Copier après la connexion

L'utilisation des annotations @Getter, @Setter et @Builder peut simplifier le code, tandis que @NoArgsConstructor et @AllArgsConstructor sont utilisés pour générer des constructeurs sans paramètre et avec paramètres complets.

  1. Définissez l'interface Mapper
public interface UserMapper extends BaseMapper<User> {
}
Copier après la connexion

Le BaseMapper fourni par MyBatis Plus est utilisé ici, ce qui permet d'économiser de nombreuses opérations SQL fastidieuses.

3. Utilisez MyBatis Plus pour les opérations de base de données
Après avoir défini l'interface Mapper, vous pouvez utiliser MyBatis Plus pour les opérations de base de données.

  1. Insérer des données
User user = User.builder()
        .name("test")
        .age(20)
        .email("test@test.com")
        .gender(1)
        .createTime(LocalDateTime.now())
        .updateTime(LocalDateTime.now())
        .build();
int count = userMapper.insert(user);
Copier après la connexion

Lors de l'insertion de données, vous pouvez directement utiliser la méthode d'insertion fournie dans l'interface Mapper, et MyBatis Plus mappera automatiquement les attributs de la classe d'entité aux colonnes correspondantes dans la base de données.

  1. Interroger des données
List<User> userList = userMapper.selectList(null);
Copier après la connexion

Lors de l'interrogation de données, vous pouvez directement utiliser la méthode selectList fournie dans l'interface Mapper et transmettre null ou un objet QueryWrapper vide pour interroger toutes les données. De plus, vous pouvez également utiliser des expressions lambda et des opérations de chaîne fournies par MyBatis Plus pour effectuer des requêtes plus complexes, comme indiqué ci-dessous :

QueryWrapper<User> wrapper = Wrappers.<User>lambdaQuery()
        .eq(User::getGender, 1)
        .ge(User::getAge, 20)
        .orderByDesc(User::getCreateTime);
List<User> userList = userMapper.selectList(wrapper);
Copier après la connexion

Dans le code ci-dessus, un QueryWrapper est défini à l'aide de Wrappers.lambdaQuery() Object, et créez des conditions de requête et des règles de tri via les opérations de chaîne .eq, .ge et .orderByDesc.

  1. Mettre à jour les données
User user = userMapper.selectById(id);
user.setAge(30);
int count = userMapper.updateById(user);
Copier après la connexion

Lors de la mise à jour des données, vous pouvez d'abord interroger les données qui doivent être mises à jour via selectById, puis modifier les attributs qui doivent être mis à jour et utiliser updateById pour mettre à jour les données modifiées dans la base de données.

  1. Delete data
int count = userMapper.deleteById(id);
Copier après la connexion

Enfin, lors de la suppression de données, appelez simplement la méthode deleteById fournie dans l'interface Mapper.

4. Conclusion
Cet article explique comment utiliser Spring Boot et MyBatis Plus pour implémenter le mappage ORM, et les opérations de base de données peuvent être réalisées grâce à une configuration et un code simples. MyBatis Plus, en tant que framework d'extension de MyBatis, peut grandement simplifier la charge de travail du développeur tout en améliorant la lisibilité et la maintenabilité du code. En raison de contraintes d'espace, cet article présente uniquement l'utilisation de base de MyBatis Plus. Pour des fonctions plus avancées, veuillez vous référer à la documentation officielle.

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Spring Boot+MyBatis+Atomikos+MySQL (avec code source) Spring Boot+MyBatis+Atomikos+MySQL (avec code source) Aug 15, 2023 pm 04:12 PM

Dans les projets réels, nous essayons d'éviter les transactions distribuées. Cependant, il est parfois vraiment nécessaire de procéder à un fractionnement des services, ce qui entraînera des problèmes de transactions distribuées. Dans le même temps, des transactions distribuées sont également demandées sur le marché lors des entretiens. Vous pouvez vous entraîner avec ce cas et parler de 123 lors de l'entretien.

Bénéficiez d'un support multilingue et d'applications internationales grâce à Spring Boot Bénéficiez d'un support multilingue et d'applications internationales grâce à Spring Boot Jun 23, 2023 am 09:09 AM

Avec le développement de la mondialisation, de plus en plus de sites Web et d'applications doivent fournir un support multilingue et des fonctions d'internationalisation. Pour les développeurs, la mise en œuvre de ces fonctions n’est pas une tâche facile car elle nécessite de prendre en compte de nombreux aspects, tels que la traduction linguistique, les formats de date, d’heure et de devise, etc. Cependant, grâce au framework SpringBoot, nous pouvons facilement implémenter un support multilingue et des applications internationales. Tout d’abord, comprenons l’interface LocaleResolver fournie par SpringBoot. Lieu

Comment utiliser Spring Boot pour créer des applications de traitement de Big Data Comment utiliser Spring Boot pour créer des applications de traitement de Big Data Jun 23, 2023 am 09:07 AM

Avec l’avènement de l’ère du Big Data, de plus en plus d’entreprises commencent à comprendre et à reconnaître la valeur du Big Data et à l’appliquer à leurs activités. La question qui se pose est de savoir comment gérer ce flux important de données. Dans ce cas, les applications de traitement du Big Data sont devenues quelque chose que chaque entreprise doit prendre en compte. Pour les développeurs, comment utiliser SpringBoot pour créer une application efficace de traitement du Big Data est également une question très importante. SpringBoot est un framework Java très populaire qui permet

Implémenter le mappage ORM basé sur Spring Boot et MyBatis Plus Implémenter le mappage ORM basé sur Spring Boot et MyBatis Plus Jun 22, 2023 pm 09:27 PM

Dans le processus de développement d'applications Web Java, la technologie de mappage ORM (Object-RelationalMapping) est utilisée pour mapper les données relationnelles de la base de données avec des objets Java, ce qui facilite l'accès et l'exploitation des données par les développeurs. SpringBoot, en tant que l'un des frameworks de développement Web Java les plus populaires à l'heure actuelle, a fourni un moyen d'intégrer MyBatis, et MyBatisPlus est un framework ORM étendu sur la base de MyBatis.

Intégration et utilisation de Spring Boot et base de données NoSQL Intégration et utilisation de Spring Boot et base de données NoSQL Jun 22, 2023 pm 10:34 PM

Avec le développement d’Internet, l’analyse des mégadonnées et le traitement de l’information en temps réel sont devenus un besoin important pour les entreprises. Afin de répondre à de tels besoins, les bases de données relationnelles traditionnelles ne répondent plus aux besoins du développement commercial et technologique. Au lieu de cela, l’utilisation de bases de données NoSQL est devenue une option importante. Dans cet article, nous aborderons l'utilisation de SpringBoot intégré aux bases de données NoSQL pour permettre le développement et le déploiement d'applications modernes. Qu'est-ce qu'une base de données NoSQL ? NoSQL n'est pas seulement du SQL

Créer un système ESB à l'aide de Spring Boot et Apache ServiceMix Créer un système ESB à l'aide de Spring Boot et Apache ServiceMix Jun 22, 2023 pm 12:30 PM

Alors que les entreprises modernes s’appuient de plus en plus sur une variété d’applications et de systèmes disparates, l’intégration d’entreprise devient encore plus importante. Enterprise Service Bus (ESB) est un modèle d'architecture d'intégration qui connecte différents systèmes et applications entre eux pour fournir des services communs d'échange de données et de routage de messages afin de réaliser l'intégration des applications au niveau de l'entreprise. En utilisant SpringBoot et ApacheServiceMix, nous pouvons facilement créer un système ESB. Cet article explique comment l'implémenter. SpringBoot et A

Créez des applications de bureau à l'aide de Spring Boot et JavaFX Créez des applications de bureau à l'aide de Spring Boot et JavaFX Jun 22, 2023 am 10:55 AM

À mesure que la technologie continue d'évoluer, nous pouvons désormais utiliser différentes technologies pour créer des applications de bureau. SpringBoot et JavaFX sont actuellement l'un des choix les plus populaires. Cet article se concentrera sur la façon d'utiliser ces deux frameworks pour créer une application de bureau riche en fonctionnalités. 1. Introduction à SpringBoot et JavaFXSpringBoot est un framework de développement rapide basé sur le framework Spring. Il aide les développeurs à créer rapidement des applications Web tout en fournissant un ensemble de

Spring Boot implémente la technologie de séparation lecture-écriture MySQL Spring Boot implémente la technologie de séparation lecture-écriture MySQL Aug 15, 2023 pm 04:52 PM

Comment réaliser la séparation lecture-écriture, projet Spring Boot, la base de données est MySQL et la couche de persistance utilise MyBatis.

See all articles