【SpringBoot实战】文章管理相关接口

新增文章接口

文章列表|条件分页接口

获取文章详情接口

3.3.1 基本信息

请求路径:/article/detail

请求方式:GET

接口描述:该接口用于根据ID获取文章详细信息

3.3.2 请求参数

请求参数格式:queryString

请求参数说明:

参数名称说明类型是否必须备注
id主键IDnumber

请求数据样例:

id=4
3.3.3 响应数据

响应数据类型:application/json

响应参数说明:

名称类型是否必须默认值备注其他信息
codenumber必须响应码, 0-成功,1-失败
messagestring非必须提示信息
dataobject必须返回的数据
|-idnumber非必须主键ID
|-titlestring非必须文章标题
|-contentstring非必须文章正文
|-coverImgstring非必须文章封面图像地址
|-statestring非必须发布状态已发布|草稿
|-categoryIdnumber非必须文章分类ID
|-createTimestring非必须创建时间
|-updateTimestring非必须更新时间

响应数据样例:

{
    "code": 0,
    "message": "操作成功",
    "data": {
        "id": 4,
        "title": "北京旅游攻略",
        "content": "天安门,颐和园,鸟巢,长城...爱去哪去哪...",
        "coverImg": "https://big-event-gwd.oss-cn-beijing.aliyuncs.com/9bf1cf5b-1420-4c1b-91ad-e0f4631cbed4.png",
        "state": "已发布",
        "categoryId": 2,
        "createTime": "2023-09-03 11:35:04",
        "updateTime": "2023-09-03 11:40:31"
    }
}

更新文章接口

3.4 更新文章

3.4.1 基本信息

请求路径:/article

请求方式:PUT

接口描述:该接口用于更新文章信息

3.4.2 请求参数

请求参数格式:application/json

请求参数说明:

参数名称说明类型是否必须备注
id主键IDnumber
title文章标题string
content文章正文string
coverImg封面图像地址string
state发布状态string已发布 | 草稿
categoryId文章分类IDnumber

请求数据样例:

{
    "id":4,
    "title": "北京旅游攻略",
    "content": "天安门,颐和园,鸟巢,长城...爱去哪去哪...",
    "coverImg": "https://big-event-gwd.oss-cn-beijing.aliyuncs.com/9bf1cf5b-1420-4c1b-91ad-e0f4631cbed4.png",
    "state": "已发布",
    "categoryId": 2
}
3.4.3 响应数据

响应数据类型:application/json

响应参数说明:

名称类型是否必须默认值备注其他信息
codenumber必须响应码, 0-成功,1-失败
messagestring非必须提示信息
dataobject非必须返回的数据

响应数据样例:

{
    "code": 0,
    "message": "操作成功",
    "data": null
}

删除文章接口

3.5 删除文章

3.5.1 基本信息

请求路径:/article

请求方式:DELETE

接口描述:该接口用于根据ID删除文章

3.5.2 请求参数

请求参数格式:queryString

请求参数说明:

参数名称说明类型是否必须备注
id主键IDnumber

请求数据样例:

id=4
3.5.3 响应数据

响应数据类型:application/json

响应参数说明:

名称类型是否必须默认值备注其他信息
codenumber必须响应码, 0-成功,1-失败
messagestring非必须提示信息
dataobject非必须返回的数据

响应数据样例:

{
    "code": 0,
    "message": "操作成功",
    "data": null
}

代码(按顺序)

  • controller
	@GetMapping("/detail")
	public Result<Article> detail(@RequestParam Integer id) {
		Article as = articleService.detail(id);
		return Result.success(as);
	}
	
	
	@PutMapping
	public Result update(@RequestBody @Validated Article article) {
		articleService.update(article);
		return Result.success();
	}
	
	@DeleteMapping
	public Result delete(@RequestParam Integer id) {
		articleService.delete(id);
		return Result.success();
	}
  • service
Article detail(Integer id);

void update(Article article);

void delete(Integer id);
  • serviceImpl
	@Override
	public Article detail(Integer id) {
		Article as = articleMapper.detail(id);
		return as;
	}

	@Override
	public void update(Article article) {
		articleMapper.update(article);
	}

	@Override
	public void delete(Integer id) {
		articleMapper.delete(id);
	}
  • mapper
	@Select("select * from article where id = #{id}")
	Article detail(Integer id);

	@Update("update article set title=#{title}, content=#{content}, cover_img=#{coverImg}, state=#{state}, category_id=#{categoryId}  where id = #{id}")
	void update(Article article);

	@Delete("delete from article where id = #{id}")
	void delete(Integer id);
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值