thymeleaf mybatis springboot实现删除操作的完整实例
时间: 2024-10-16 22:03:10 浏览: 21
Springboot 整合Mybatis +thymeleaf 实现增删改查,包含前端HTML页面
5星 · 资源好评率100%
在Thymeleaf、MyBatis和Spring Boot项目中实现删除操作的完整示例包括以下几个步骤:
1. **模型层**(Model):
创建一个表示要删除的对象,如`News.java`:
```java
@Entity
public class News {
private int id;
// 其他字段...
// getter和setter
}
```
2. **服务层**(Service):
在`NewsService.java`中定义删除方法并注入Mapper接口:
```java
@Service
public class NewsService {
@Autowired
private NewsMapper newsMapper;
public int deleteNews(int id) {
return newsMapper.deleteNews(id);
}
}
```
3. **数据访问层**(Mapper):
在`NewsMapper.java`中编写删除操作的映射,类似于上面提到的`mapper.xml`中的`deleteNews`方法:
```java
@Delete("DELETE FROM news WHERE id = #{id}")
public int deleteNews(@Param("id") int id);
```
4. **控制器层**(Controller):
在`NewsController.java`中,接收前端请求并调用服务层的方法:
```java
@RestController
public class NewsController {
@Autowired
private NewsService newsService;
@GetMapping("/{id}/delete")
public ResponseEntity<?> deleteNews(@PathVariable("id") int id) {
int deletedRows = newsService.deleteNews(id);
if (deletedRows > 0) {
return ResponseEntity.ok().build();
} else {
return ResponseEntity.notFound().build();
}
}
}
```
5. **模板层**(Thymeleaf):
使用Thymeleaf的`th:href`指令创建删除链接,例如在`news.html`文件中:
```html
<a th:href="@{/news/{id}(id=${news.id})}" method="delete">删除</a>
```
这里的`method="delete"`告诉浏览器这是一个删除请求。
阅读全文