Explication détaillée de la configuration de MyBatis basée sur Spring Boot
Spring Boot est un framework pour le développement rapide d'applications, et MyBatis est un framework de persistance populaire. L'utilisation de MyBatis dans Spring Boot peut simplifier le processus d'accès à la base de données et de persistance des données. Cet article expliquera en détail comment configurer et utiliser MyBatis dans Spring Boot et fournira des exemples de code spécifiques.
1. Configuration de MyBatis
Avant d'utiliser MyBatis, vous devez d'abord ajouter les dépendances pertinentes dans le fichier pom.xml.
<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.1.4</version> </dependency>
Dans Spring Boot, vous pouvez utiliser la base de données H2 intégrée comme démonstration. Ajoutez la configuration suivante dans le fichier application.properties :
spring.datasource.url=jdbc:h2:mem:testdb spring.datasource.driver-class-name=org.h2.Driver spring.datasource.username=sa spring.datasource.password=
Ajoutez la configuration suivante dans le fichier application.properties :
mybatis.mapper-locations=classpath:mapper/*.xml mybatis.type-aliases-package=com.example.domain
Parmi eux, mapper-locations
précise le MyBatis Emplacement du fichier de mappage, type-aliases-package
spécifie le nom du package de la classe d'entité. mapper-locations
指定了MyBatis映射文件的位置,type-aliases-package
指定了实体类的包名。
创建一个User类作为示例实体类:
package com.example.domain; public class User { private Long id; private String name; // 省略getter和setter方法 }
创建一个UserMapper接口,在接口中定义需要执行的数据库操作:
package com.example.mapper; import com.example.domain.User; import org.apache.ibatis.annotations.Mapper; @Mapper public interface UserMapper { User getUserById(Long id); void saveUser(User user); void updateUser(User user); void deleteUser(Long id); }
在resources目录下创建mapper文件夹,并在该文件夹下创建UserMapper.xml文件:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.example.mapper.UserMapper"> <resultMap id="BaseResultMap" type="com.example.domain.User"> <id column="id" property="id" jdbcType="BIGINT"/> <result column="name" property="name" jdbcType="VARCHAR"/> </resultMap> <select id="getUserById" resultMap="BaseResultMap"> SELECT * FROM user WHERE id = #{id} </select> <insert id="saveUser"> INSERT INTO user(name) VALUES(#{name}) </insert> <update id="updateUser"> UPDATE user SET name = #{name} WHERE id = #{id} </update> <delete id="deleteUser"> DELETE FROM user WHERE id = #{id} </delete> </mapper>
二、使用MyBatis进行数据库操作
编写一个UserService类,用于执行具体的数据库操作:
package com.example.service; import com.example.domain.User; import com.example.mapper.UserMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @Service public class UserService { @Autowired private UserMapper userMapper; public User getUserById(Long id) { return userMapper.getUserById(id); } public void saveUser(User user) { userMapper.saveUser(user); } public void updateUser(User user) { userMapper.updateUser(user); } public void deleteUser(Long id) { userMapper.deleteUser(id); } }
编写一个UserController类,用于接收外部请求并调用对应的Service方法:
package com.example.controller; import com.example.domain.User; import com.example.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @RestController @RequestMapping("/users") public class UserController { @Autowired private UserService userService; @GetMapping("/{id}") public User getUserById(@PathVariable Long id) { return userService.getUserById(id); } @PostMapping("/") public void saveUser(@RequestBody User user) { userService.saveUser(user); } @PutMapping("/{id}") public void updateUser(@PathVariable Long id, @RequestBody User user) { user.setId(id); userService.updateUser(user); } @DeleteMapping("/{id}") public void deleteUser(@PathVariable Long id) { userService.deleteUser(id); } }
编写一个启动类,并添加@SpringBootApplication
注解:
package com.example; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
可以使用Postman等工具发送HTTP请求,测试接口的调用。例如,发送GET请求:localhost:8080/users/1
Créer une classe User comme exemple de classe d'entité :
rrreee@SpringBootApplication
: 🎜rrreeelocalhost:8080/users/1
pour interroger les informations utilisateur avec l'ID 1. 🎜🎜Conclusion🎜🎜Cet article explique en détail le processus de configuration et d'utilisation de MyBatis dans un projet basé sur Spring Boot et fournit des exemples de code pertinents. Grâce aux étapes ci-dessus, vous pouvez facilement intégrer et utiliser MyBatis pour les opérations de base de données dans votre projet Spring Boot. J'espère que cet article vous aidera ! 🎜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!