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);
}
}