使用Springboot整合Spring和SpringMVC结合Mybatis完成个人信息更新操作,要求如下: 1.已知数据表信息 编号 个人名称 所在地区 联系人 性别等.... 2.正确搭建SSM的开发平台 3.创建查询界面 按照姓名查询条件 包含所在地区等信息 4.使用Mybatis的mapper接口方式显示数据表中的内容 5.可以进行更新操作,并显示更新后的结果
时间: 2024-04-05 10:30:09 浏览: 104
好的,我可以为您提供一个基本的SpringBoot整合SSM框架的个人信息更新操作的示例。
1. 数据库表信息
假设我们有一个名为`person`的数据表,表中包含以下字段:
```
id INT PRIMARY KEY,
name VARCHAR(50),
location VARCHAR(50),
contact VARCHAR(50),
gender VARCHAR(10)
```
2. 搭建SSM开发平台
您可以按照我之前回答的问题《搭建ssm开发环境》的步骤搭建SSM开发环境,然后使用SpringBoot框架来整合SSM框架。
3. 创建查询界面
您可以使用Thymeleaf模板引擎和Bootstrap框架创建查询界面,代码如下:
```
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>查询个人信息</title>
<link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js"></script>
<script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>
<div class="container">
<h1>查询个人信息</h1>
<form class="form-inline" role="form" th:action="@{/person}" method="get">
<div class="form-group">
<label class="sr-only" for="name">姓名</label>
<input type="text" class="form-control" id="name" name="name" placeholder="请输入姓名">
</div>
<div class="form-group">
<label class="sr-only" for="location">所在地区</label>
<input type="text" class="form-control" id="location" name="location" placeholder="请输入所在地区">
</div>
<button type="submit" class="btn btn-default">查询</button>
</form>
<br>
<table class="table table-striped">
<thead>
<tr>
<th>编号</th>
<th>个人名称</th>
<th>所在地区</th>
<th>联系人</th>
<th>性别</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<tr th:each="person : ${persons}">
<td th:text="${person.id}"></td>
<td th:text="${person.name}"></td>
<td th:text="${person.location}"></td>
<td th:text="${person.contact}"></td>
<td th:text="${person.gender}"></td>
<td>
<a th:href="@{/person/edit(id=${person.id})}">编辑</a>
</td>
</tr>
</tbody>
</table>
</div>
</body>
</html>
```
4. 使用Mybatis的Mapper接口方式显示数据表中的内容
定义一个Person实体类,包含与数据表对应的字段和对应的Getter和Setter方法,代码如下:
```
public class Person {
private Integer id;
private String name;
private String location;
private String contact;
private String gender;
// Getter和Setter方法
}
```
定义一个PersonMapper接口,使用Mybatis的注解方式定义SQL语句,代码如下:
```
@Mapper
public interface PersonMapper {
@Select("SELECT * FROM person WHERE name LIKE CONCAT('%', #{name}, '%') AND location LIKE CONCAT('%', #{location}, '%')")
List<Person> findByNameAndLocation(@Param("name") String name, @Param("location") String location);
@Select("SELECT * FROM person WHERE id = #{id}")
Person findById(@Param("id") Integer id);
@Update("UPDATE person SET name = #{name}, location = #{location}, contact = #{contact}, gender = #{gender} WHERE id = #{id}")
int update(Person person);
}
```
在SpringBoot的配置文件中添加Mybatis的配置,代码如下:
```
mybatis.mapper-locations=classpath:/mapper/*.xml
```
5. 进行更新操作,并显示更新后的结果
定义一个PersonController类,完成查询、更新等操作,代码如下:
```
@Controller
@RequestMapping("/person")
public class PersonController {
@Autowired
private PersonMapper personMapper;
@GetMapping
public String index(Model model, @RequestParam(name = "name", required = false, defaultValue = "") String name,
@RequestParam(name = "location", required = false, defaultValue = "") String location) {
List<Person> persons = personMapper.findByNameAndLocation(name, location);
model.addAttribute("persons", persons);
return "person/index";
}
@GetMapping("/edit")
public String edit(Model model, @RequestParam(name = "id") Integer id) {
Person person = personMapper.findById(id);
model.addAttribute("person", person);
return "person/edit";
}
@PostMapping("/edit")
public String update(Person person) {
personMapper.update(person);
return "redirect:/person";
}
}
```
在Thymeleaf模板引擎中创建编辑界面,代码如下:
```
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>编辑个人信息</title>
<link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js"></script>
<script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>
<div class="container">
<h1>编辑个人信息</h1>
<form role="form" th:action="@{/person/edit}" method="post">
<div class="form-group">
<label for="name">个人名称</label>
<input type="text" class="form-control" id="name" name="name" th:value="${person.name}">
</div>
<div class="form-group">
<label for="location">所在地区</label>
<input type="text" class="form-control" id="location" name="location" th:value="${person.location}">
</div>
<div class="form-group">
<label for="contact">联系人</label>
<input type="text" class="form-control" id="contact" name="contact" th:value="${person.contact}">
</div>
<div class="form-group">
<label for="gender">性别</label>
<input type="text" class="form-control" id="gender" name="gender" th:value="${person.gender}">
</div>
<input type="hidden" name="id" th:value="${person.id}">
<button type="submit" class="btn btn-default">保存</button>
</form>
</div>
</body>
</html>
```
以上就是一个基本的SpringBoot整合SSM框架的个人信息更新操作的示例,您可以根据实际情况进行修改和扩展。
阅读全文