SpringBoot整合MyBatis
-
导入依赖包
-
编写接口和xml
-
修改配置文件application.properties
-
编写 controller 测试使用
一、导入依赖包
<!--mybatis-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.1</version>
</dependency>
<!--数据库驱动-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<!--lombok-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
二、编写接口和xml
新增 UserMapper接口包
package com.example.user.mapper;
import com.example.user.domain.User;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
import java.util.List;
@Mapper
@Repository
public interface UserMapper {
// 查询所有用户
List<User> queryUserList();
User queryUserById(int id);
int addUser(User user);
int updateUser(User users);
int deleteUser(int id);
}
然后在 resources/mapper 目录新增 UserMapper.xml 文件
注意 namespace
需要绑定接口
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.user.mapper.UserMapper">
<select id="queryUserList" resultType="User">
select * from user
</select>
<select id="queryUserById" parameterType="int" resultType="User">
select * from user where id = #{id}
</select>
<insert id="addUser" parameterType="User">
insert into user(id,name,username,password) values(#{id},#{name},#{username},#{password})
</insert>
<update id="updateUser" parameterType="User">
update user set name = #{name}, username = #{username}, password = #{password} where id = #{id}
</update>
<delete id="deleteUser" parameterType="int">
delete from user where id = #{id}
</delete>
</mapper>
三、修改配置文件application.properties
spring.datasource.username=root
spring.datasource.password=su666666
spring.datasource.url=jdbc:mysql://x.x.x.x:3306/user?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
# 整合 MyBatis 配置
# 别名
mybatis.type-aliases-package=com.example.user.domain
# 绑定 mapper.xml
mybatis.mapper-locations=classpath:mapper/*.xml
四、编写 controller 测试使用
package com.example.user.controller;
import com.example.user.domain.User;
import com.example.user.mapper.UserMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.List;
@Controller
public class UserController {
@Autowired
private UserMapper userMapper;
@RequestMapping("/user")
@ResponseBody
public List<User> user() {
List<User> list= userMapper.queryUserList();
return list;
}
}
启动项目, 测试访问 http://localhost:8080/user
成功
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)