【在SpringBoot项目中编辑相册数据】

目录

1. 编辑相册--显示编辑区--Mapper层

2. 编辑相册--显示编辑区--Service层

3. 编辑相册--显示编辑区--Controller层

4. 测试


1. 编辑相册--显示编辑区--Mapper层

显示编辑区主要是将原有数据查询出来,使用已有的getStandardById()即可,所以,本次Mapper层无须开发新的功能。

/**
 * 根据id查询相册详情
 *
 * @param id 相册id
 * @return 匹配的相册详情,如果没有匹配的数据,则返回null
 */
AlbumStandardVO getStandardById(Long id);

2. 编辑相册--显示编辑区--Service层

IAlbumService接口中添加抽象方法

/**
 * 根据id查询相册详情
 *
 * @param id 相册id
 * @return 匹配的相册详情,如果没有匹配的数据,则返回null
 */
AlbumStandardVO getStandardById(Long id);

 在AlbumServiceImpl中实现以上方法:

@Override
public AlbumStandardVO getStandardById(Long id) {
    log.debug("开始处理【根据id查询相册详情】的业务,参数:{}", id);
    AlbumStandardVO queryResult = albumMapper.getStandardById(id);
    if (queryResult == null) {
        String message = "根据id查询相册详情失败,尝试访问的数据不存在!";
        log.warn(message);
        throw new ServiceException(ServiceCode.ERR_NOT_FOUND, message);
    }
    log.debug("即将返回相册详情:{}", queryResult);
    return queryResult;
}

AlbumServiceTests中编写并执行测试:

@Test
void getStandardById() {
    Long id = 1L;

    try {
        service.getStandardById(id);
        log.debug("获取数据完成!");
    } catch (ServiceException e) {
        log.debug("获取数据失败!具体原因请参见日志!");
    }
}

3. 编辑相册--显示编辑区--Controller层

AlbumController中添加处理请求的方法:

  • 请求路径:/album/info
  • 请求方式:GET
  • 请求参数:Long id
  • 响应结果:JsonResult >>> state:20000, data:相册对象

具体代码为:

// http://localhost:9080/album/info?id=1
@ApiOperation("根据id查询相册详情")
@ApiOperationSupport(order = 410)
@GetMapping("/info")
public JsonResult getStandardById(Long id) {
    log.debug("开始处理【根据id查询相册详情】的请求,参数:{}", id);
    AlbumStandardVO album = albumService.getStandardById(id);
    return JsonResult.ok(album);
}

4. 测试

完成以上代码后,重启项目,可以通过API文档测试访问,当查询成功时,响应的正文是:

{
  "state": 20000,
  "data": {
    "id": 10,
    "name": "华为P50的相册",
    "description": "暂无",
    "sort": 99
  }
}

当给出的ID并不存在时,响应的正文是:

{
  "state": 40400,
  "message": "根据id查询相册详情失败,尝试访问的数据不存在!"
}

个人主页:居然天上楼

感谢你这么可爱帅气还这么热爱学习~~

人生海海,山山而川

你的点赞👍 收藏⭐ 留言📝 加关注✅

是对我最大的支持与鞭策

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

居然天上楼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值