80 lines
2.1 KiB
Java
80 lines
2.1 KiB
Java
package com.xubx.springboot_01demo.controller;
|
|
|
|
import com.xubx.springboot_01demo.pojo.Blogs;
|
|
import com.xubx.springboot_01demo.service.BlogService;
|
|
import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.ApiOperation;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import org.springframework.cache.annotation.CacheEvict;
|
|
import org.springframework.cache.annotation.Cacheable;
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
import javax.annotation.Resource;
|
|
import java.util.List;
|
|
|
|
@RestController //注解标识这是一个控制器类
|
|
@CrossOrigin //加上CrossOrigin可解决跨域问题
|
|
@Slf4j
|
|
@Api(tags = "博客接口")
|
|
@RequestMapping("/blog")
|
|
public class BlogsController {
|
|
@Resource
|
|
BlogService blogService;
|
|
|
|
/**
|
|
* 获取所有博客
|
|
*/
|
|
@GetMapping("/getBlogs")
|
|
@Cacheable(value = "blogs")
|
|
@ApiOperation("获取所有博客")
|
|
public List<Blogs> getBlogs (){
|
|
log.info("博客展示");
|
|
return blogService.findAllBlogs();
|
|
}
|
|
|
|
/**
|
|
* 获取博客详情
|
|
* @param id
|
|
* @return
|
|
*/
|
|
@GetMapping("/getBlogDetail")
|
|
@Cacheable(value = "blogDetail")
|
|
@ApiOperation("获取博客详情")
|
|
public Blogs getBlogDetail(@RequestParam("blogId") int id){
|
|
return blogService.findByIdBlogs(id);
|
|
}
|
|
|
|
/**
|
|
* 新增博客
|
|
* @param blogs
|
|
*/
|
|
@PostMapping("/addBlog")
|
|
@CacheEvict(value = "blogs",allEntries = true)
|
|
@ApiOperation("新增博客")
|
|
public void addBlog(@RequestBody Blogs blogs){
|
|
blogService.addBlogs(blogs);
|
|
}
|
|
|
|
/**
|
|
* 修改博客
|
|
* @param blogs
|
|
*/
|
|
@PostMapping("/updateBlog")
|
|
@CacheEvict(value = "blogs",allEntries = true)
|
|
@ApiOperation("修改博客")
|
|
public void updateBlog(@RequestBody Blogs blogs){
|
|
blogService.updateBlogs(blogs);
|
|
}
|
|
|
|
/**
|
|
* 删除博客
|
|
* @param id
|
|
*/
|
|
@GetMapping("/deleteBlog")
|
|
@CacheEvict(value = "blogs",allEntries = true)
|
|
@ApiOperation("删除博客")
|
|
public void deleteBlog(@RequestParam("blogId") int id){
|
|
blogService.deleteBlogs(id);
|
|
}
|
|
}
|