Spring Boot+Vue前后端分离开发10-----删除功能(完结)

标签 : Java Vue Sring JPA ELementUI
作者 : Maxchen
版本 : V1.0.0
日期 : 2020/3/11


删除功能开发

第一步:我们展开JpaRepository的方法,可以到找到一个方法deleteById,此方法了一通过id删除数据。

image.png-94.8kB

第二步:测试deleteById方法,运行之后发现数据已删除。

    /**
     * @Title: deleteBookById
     * @Description: 通过图书id删除图书
     * @Author Maxchen

     * @return void
     * @throws
     * @Date 2020/3/12 17:06
     */
    @Test
    void deleteBookById(){
        bookRepository.deleteById(1);
    }

image.png-86.5kB

image.png-89.4kB

第三步Controller层增加如下代码。

    //通过id删除图书
    @PostMapping("deleteBookById/{id}")
    public String deleteBookById(@PathVariable("id") Integer id){
        try {
            bookRepository.deleteById(id);
            return "success";
        } catch (Exception e) {
            e.printStackTrace();
            return "fail";
        }
    }

第四步:测试接口是否正常,如果能成功返回success,则说明接口开发成功。

image.png-47.9kB

第五步:表格增加一个删除按钮并提前把删除方法定义出来。

<el-button @click="deleteBook(scope.row)" type="text" size="small">删除</el-button>
deleteBook(row) {
	const _this = this
	_this.$alert(row.id)
}

第六步:进入图书管理页面,点击删除测试一下,如果弹窗显示图书编号说明程序正常。

image.png-53.6kB

第七步:前后端进行联调,前端调用删除数据的接口,修改如图所示的代码。

image.png-22kB

axios.post('http://localhost:8181/book/deleteBookById/'+row.id).then(function(resp){
    if(resp.data == 'success'){
        _this.$alert('《'+row.name+'》删除成功!', '消息', {
            confirmButtonText: '确定',
            callback: action => {
                window.location.reload()
            }
        })
    }
})

第八步:测试页面的删除功能,点击删除之后可看到此行的数据已消失。

image.png-52.8kB

image.png-55.6kB

image.png-49.9kB


发布了16 篇原创文章 · 获赞 32 · 访问量 2373

猜你喜欢

转载自blog.csdn.net/u012420395/article/details/104829990