首页面banner管理(接口)

555 阅读1分钟

1、在service模块下创建子模块service_cms

在这里插入图片描述

2、创建banner管理的数据库

在这里插入图片描述

替换banner图片地址

https://guli-file191101test.oss-cn-beijing.aliyuncs.com/2020/03/24/1e2a8e25-bf12-4e01-8885-f91ac1a33e3f1.jpg
https://guli-file191101test.oss-cn-beijing.aliyuncs.com/2020/03/24/36f494db-cf06-4adf-ae8d-7d7c2f87c93dbanner-1-blue.jpg

3、生成banner代码

在这里插入图片描述 在这里插入图片描述

4、创建启动类

package com.atguigu.cmsservice;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.context.annotation.ComponentScan;

@EnableFeignClients
@ComponentScan(basePackages = {"com.atguigu"})
@EnableDiscoveryClient
@SpringBootApplication
@ComponentScan({"com.atguigu"}) //指定扫描位置
@MapperScan("com.atguigu.cmsservice.mapper")
public class CmsApplication {
    public static void main(String[] args) {
        SpringApplication.run(CmsApplication.class, args);
    }
}

5、创建配置文件

# 服务端口
server.port=8004
# 服务名
spring.application.name=service-cms
# mysql数据库连接
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/guli?serverTimezone=GMT%2B8
spring.datasource.username=guli
spring.datasource.password=123123
#返回json的全局时间格式
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
spring.jackson.time-zone=GMT+8
#配置mapper xml文件的路径
mybatis-plus.mapper-locations=classpath:com/atguigu/cmsservice/mapper/xml/*.xml
#mybatis日志
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl

6、banner管理添加接口(后台)

@Api(description="banner管理")
@RestController
@RequestMapping("/cmsservice/banner")
@CrossOrigin
public class BannerController {

    @Autowired
    private BannerService bannerService;

    @ApiOperation(value = "分页查询")
    @GetMapping("getBannerList/{current}/{limit}")
    public R getBannerList(@PathVariable long current,@PathVariable long limit){
        Page<Banner> page = new Page<>(current,limit);
        QueryWrapper<Banner> wrapper = new QueryWrapper<>();
        wrapper.orderByDesc("id");
        bannerService.page(page,wrapper);
        return R.ok().data("total",page.getTotal()).data("rows",page.getRecords());
    }

    @ApiOperation(value = "添加")
    @PostMapping("addBanner")
    public R addBanner(@RequestBody Banner banner){
        bannerService.save(banner);
        return R.ok();
    }

    @ApiOperation(value = "根据id查询")
    @GetMapping("{id}")
    public R getBanner(@PathVariable String id){
        Banner banner = bannerService.getById(id);
        return R.ok().data("banner",banner);
    }

    @ApiOperation(value = "修改")
    @PostMapping("updateBanner")
    public R updateBanner(@RequestBody Banner banner){
        bannerService.updateById(banner);
        return R.ok();
    }
    @ApiOperation(value = "根据id删除")
    @DeleteMapping("{id}")
    public R deleteBanner(@PathVariable String id){
        bannerService.removeById(id);
        return R.ok();
    }
}

7、banner展示接口实现

在这里插入图片描述

@Api(description="banner前台展示")
@RestController
@RequestMapping("/cmsservice/bannerapi")
@CrossOrigin
public class BannerApiController {
    @Autowired
    private BannerService bannerService;
    @ApiOperation(value = "前台查询banner")
    @GetMapping("getAllBanner")
    public R getAllBanner(){
        List<Banner> list = bannerService.list(null);
        return R.ok().data("list",list);
    }
}