下面我来详细讲解“Spring Boot整合MyBatis操作过程”的完整攻略,目录如下:
-
- 环境准备
-
- 创建Maven工程
-
- 引入依赖
-
- 配置数据源
-
- 创建MyBatis映射文件
-
- 创建Mapper接口
-
- 创建Service和Controller
-
- 启动应用程序
-
- 示例1:查询全部用户信息
-
- 示例2:根据用户名查询用户信息
-
- 总结
1. 环境准备
首先需要准备好以下环境:
- JDK:1.8
- IDE:IntelliJ IDEA
- 数据库:MySQL
2. 创建Maven工程
进入IntelliJ IDEA,选择File -> New Project,选择Maven,在下一个窗口中,填写相关信息。
3. 引入依赖
在pom.xml文件中引入所需的依赖,包括:Spring Boot、MyBatis、MySQL驱动以及相关依赖。示例代码如下:
<dependencies>
<!-- Spring Boot -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- MyBatis -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.2.0</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.48</version>
</dependency>
</dependencies>
4. 配置数据源
在application.properties文件中配置MySQL数据库信息,示例代码如下:
# 数据库连接信息
spring.datasource.url=jdbc:mysql://localhost:3306/testdb?useUnicode=true&characterEncoding=utf-8&useSSL=false
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
5. 创建MyBatis映射文件
在resource目录下创建mapper目录,在其中创建UserMapper.xml文件,编写对应的SQL语句以及MyBatis映射关系。示例代码如下:
<?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.demo.mapper.UserMapper">
<select id="selectAll" resultType="com.example.demo.entity.User">
SELECT * FROM user
</select>
<select id="selectByName" resultType="com.example.demo.entity.User">
SELECT * FROM user WHERE name = #{name}
</select>
</mapper>
6. 创建Mapper接口
在com.example.demo.mapper包下创建UserMapper接口,在其中定义对应的两个方法。示例代码如下:
package com.example.demo.mapper;
import com.example.demo.entity.User;
import org.apache.ibatis.annotations.Select;
import java.util.List;
public interface UserMapper {
@Select("SELECT * FROM user")
List<User> selectAll();
@Select("SELECT * FROM user WHERE name = #{name}")
User selectByName(String name);
}
7. 创建Service和Controller
在com.example.demo.service包下创建UserService接口,在其中定义对应的两个方法。示例代码如下:
package com.example.demo.service;
import com.example.demo.entity.User;
import java.util.List;
public interface UserService {
List<User> getAllUser();
User getUserByName(String name);
}
在com.example.demo.service.impl包下创建UserServiceImpl实现类,实现UserService接口。示例代码如下:
package com.example.demo.service.impl;
import com.example.demo.entity.User;
import com.example.demo.mapper.UserMapper;
import com.example.demo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserMapper userMapper;
@Override
public List<User> getAllUser() {
return userMapper.selectAll();
}
@Override
public User getUserByName(String name) {
return userMapper.selectByName(name);
}
}
在com.example.demo.controller包下创建UserController类,编写对应的两个接口。示例代码如下:
package com.example.demo.controller;
import com.example.demo.entity.User;
import com.example.demo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
public class UserController {
@Autowired
private UserService userService;
@GetMapping("/user/all")
public List<User> getAllUser() {
return userService.getAllUser();
}
@GetMapping("/user/name")
public User getUserByName(@RequestParam String name) {
return userService.getUserByName(name);
}
}
8. 启动应用程序
启动应用程序,访问localhost:8080/user/all,查看返回的全部用户信息。
9. 示例1:查询全部用户信息
使用Postman等工具,发起GET请求,访问localhost:8080/user/all,查看返回的全部用户信息。
10. 示例2:根据用户名查询用户信息
使用Postman等工具,发起GET请求,访问localhost:8080/user/name?name=test,查看返回的用户信息。
11. 总结
通过以上的步骤,我们完成了Spring Boot整合MyBatis的过程。首先我们需要创建Maven工程,然后引入所需的依赖。之后需要配置数据源,把MySQL数据库中的数据存储到Java对象中。接着,我们创建了MyBatis映射文件以及Mapper接口,用于向MySQL数据库中查询数据。之后,我们创建了Service和Controller,提供对应的接口,便于前端进行调用。最后,我们启动应用程序,完成全部操作。
示例代码中有两个接口,其中getUserByName方法中的参数name是通过@RequestParam注解从URL参数中获取的,方便后续的开发和调用。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Spring Boot整合MyBatis操作过程 - Python技术站