SpringBoot整合MyBatis进行增删查改详细步骤:
第一步
建立数据库
CREATE TABLE user(id INT auto_increment,name VARCHAR(255),age INT,PRIMARY KEY(id)); INSERT INTO USER VALUES(1,"张三",12); INSERT INTO USER VALUES(NULL,"李四",17); INSERT INTO USER VALUES(null,"王五",21);
然后创建新工程:

选择



这样项目就创建完成,第一次创建需要下载很多东西,要等一会儿.

这是需要建立的文件夹及目录??
首先是写配置文件
application.yml(看个人习惯,我比较喜欢yml格式)


spring:
datasource:
url: jdbc:mysql://localhost:3306/database?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC
username: root
password: 123456
driver-class-name: com.mysql.jdbc.Driver
thymeleaf:
cache: false #关闭缓存
mode: HTML5 #设置模板类型
encoding: utf-8 #设置编码
然后是实体类,实体类就是放需要的属性,默认私有
注意:实体类属性名称和类型与数据库保持一致



然后写UserMapper文件


写service的接口


service的实现类


当然,前面我把相关sql语句写在了UserMapper中,所以UserMapper.xml中我们就不用去写了


下面是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.xxxx.crudmybatis01.mapper.UserMapper"/>
namespace要写自己的映射文件所在级别


话不多说,就这个代码,简单的很
方法的讲解:
@RequestMapping
RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。
也就是说,页面识别某个方法的一个标志
参数里的Model用来存放值,传输到前端页面用于展示model.addAttribute()
用return返回到html页面
修改的话,我们需要先进行单个查询,获取到需要修改的信息,展示到前端页面,供客户更改,点击提交,输入框中的信息提交到后台,从而运行修改这个方法,后台可以选择转发到首页(全部展示)
添加的话,大致相同,我使用的是a标签,点击a标签跳转到add方法,而这个add方法呢,仅用于跳转到增加页面,用户输入内容,点击提交,这个时候参数传入add2方法中,从而完成信息的增加,然后转发到首页(全部展示)
@Controller
public class UserController {
@Autowired
UserService us;
//查询全部
@RequestMapping("/show")
public String show(Model model) {
List<User> all = us.fidAll();
model.addAttribute("all", all);
return "show";
}
//查询一个
@RequestMapping("/selectone")
public String selectone(Model model, Integer id) {
User oneById = us.getOneById(id);
model.addAttribute("oneById", oneById);
return "change";
}
@RequestMapping("/change")
public String change(User user) {
us.change(user);
return "redirect:show";
}
//删除
@RequestMapping("/del")
public String del(Integer id) {
us.del(id);
return "redirect:show";
}
//增加
@RequestMapping("/add")
public String add(User user) {
return "add";
}
@RequestMapping("/add2")
public String add2(String name, Integer age) {
System.out.println(name+age);
us.saveAdd(name, age);
return "redirect:show";
}
接下来就是页面:
全部查询页面


<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<table border="1" cellspacing="0">
<tr>
<td>编号</td>
<td>姓名</td>
<td>年龄</td>
<td>操作</td>
</tr>
<tr th:each="user:${all}">
<td th:text="${user.id}">id编号</td>
<td th:text="${user.name}">name姓名</td>
<td th:text="${user.age}">年龄age</td>
<td><a th:href="@{/selectone(id=${user.id})}" >修改</a>
<a th:href="@{/del(id=${user.id})}">删除</a></td>
</tr>
<a th:href="@{/add}">添加人员信息</a>
</table>
</body>
</html>
添加页面
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymleaf.org">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form action="/add2" method="post">
请输入用户名: <input type="text" name="name"/></br>
请输入年龄: <input type="text" name="age"/>
<button th:type="submit">提交</button>
</form>
</body>
</html>
修改页面
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymleaf.org">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form th:action="@{/change}" method="post">
<input type="hidden" name="id" th:value="${oneById.id}">
请输入姓名:<input type="text" name="name" th:value="${oneById.name}" }>
请输入年龄:<input type="text" name="age" th:value="${oneById.age}" }>
<button type="submit">提交</button>
</form>
</body>
</html>
好了,这就是整合MyBatis进行增删查改,写下详细步骤,防止大脑丢失记忆!
原文:https://www.cnblogs.com/xxcbz/p/14372794.html