swagger java_swagger使用指南

package com.youjia.swagger.controller;

import com.youjia.swagger.constants.CommonConstants;

import com.youjia.swagger.model.Film;

import com.youjia.swagger.model.ResultModel;

import com.youjia.swagger.service.FilmService;

import io.swagger.annotations.Api;

import io.swagger.annotations.ApiImplicitParam;

import io.swagger.annotations.ApiImplicitParams;

import io.swagger.annotations.ApiOperation;

import io.swagger.annotations.ApiParam;

import io.swagger.annotations.ApiResponse;

import io.swagger.annotations.ApiResponses;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.util.CollectionUtils;

import org.springframework.util.StringUtils;

import org.springframework.web.bind.annotation.GetMapping;

import org.springframework.web.bind.annotation.PathVariable;

import org.springframework.web.bind.annotation.PostMapping;

import org.springframework.web.bind.annotation.RequestBody;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestParam;

import org.springframework.web.bind.annotation.RestController;

import javax.servlet.http.HttpServletRequest;

import java.text.DateFormat;

import java.text.SimpleDateFormat;

import java.util.Date;

import java.util.List;

import java.util.Objects;

/**

* @Auther: wyq

* @Date: 2018/12/29 14:50

*/

@RestController

@Api(value = "电影Controller", tags = { "电影访问接口" })

@RequestMapping("/film")

public class FilmController {

@Autowired

private FilmService filmService;

/**

* 添加一个电影数据

*

* @param

* @return

*/

@ApiOperation(value = "添加一部电影")

@PostMapping("/addFilm")

@ApiResponses(value = { @ApiResponse(code = 1000, message = "成功"), @ApiResponse(code = 1001, message = "失败"),

@ApiResponse(code = 1002, response = Film.class,message = "缺少参数") })

public ResultModel addFilm(@ApiParam("电影名称") @RequestParam("filmName") String filmName,

@ApiParam(value = "分数", allowEmptyValue = true) @RequestParam("score") Short score,

@ApiParam("发布时间") @RequestParam(value = "publishTime",required = false) String publishTime,

@ApiParam("创建者id") @RequestParam("creatorId") Long creatorId) {

if (Objects.isNull(filmName) || Objects.isNull(score) || Objects.isNull(publishTime) || StringUtils

.isEmpty(creatorId)) {

return new ResultModel(ResultModel.failed, "参数错误");

}

Film filmPOM = new Film();

filmPOM.setFilmName(filmName);

filmPOM.setScore(score);

DateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");

Date publishTimeDate = null;

try {

publishTimeDate = simpleDateFormat.parse(publishTime);

} catch (Exception ex) {

ex.printStackTrace();

}

filmPOM.setPublishTime(publishTimeDate);

filmPOM.setCreatorId(creatorId);

Boolean result = filmService.addFilm(filmPOM);

if (result) {

return new ResultModel(CommonConstants.SUCCESSMSG);

}

return new ResultModel(CommonConstants.FAILD_MSG);

}

/**

* 根据电影名字获取电影

*

* @param fileName

* @return

*/

@GetMapping("/getFilms")

@ApiOperation(value = "根据名字获取电影")

@ApiResponses(value = { @ApiResponse(code = 1000, message = "成功"), @ApiResponse(code = 1001, message = "失败"),

@ApiResponse(code = 1002, message = "缺少参数") })

public ResultModel getFilmsByName(@ApiParam("电影名称") @RequestParam("fileName") String fileName) {

if (StringUtils.isEmpty(fileName)) {

return CommonConstants.getErrorResultModel();

}

List films = filmService.getFilmByName(fileName);

if (!CollectionUtils.isEmpty(films)) {

return new ResultModel(films);

}

return CommonConstants.getErrorResultModel();

}

/**

* 根据电影名更新

*

* @return

*/

@PostMapping("/updateScore")

@ApiOperation(value = "根据电影名修改分数")

@ApiResponses(value = { @ApiResponse(code = 1000, message = "成功"), @ApiResponse(code = 1001, message = "失败"),

@ApiResponse(code = 1002, message = "缺少参数") })

public ResultModel updateFilmScore(@ApiParam("电影名称") @RequestParam("fileName") String fileName,

@ApiParam("分数") @RequestParam("score") Short score) {

if (StringUtils.isEmpty(fileName) || Objects.isNull(score)) {

return CommonConstants.getErrorResultModel();

}

filmService.updateScoreByName(fileName, score);

return CommonConstants.getSuccessResultModel();

}

/**

* 根据电影名删除电影

*

* @param request

* @return

*/

@PostMapping("/delFilm")

@ApiOperation(value = "根据电影名删除电影")

@ApiImplicitParams({ @ApiImplicitParam(name = "filmName",

value = "电影名",

dataType = "String",

paramType = "query",

required = true), @ApiImplicitParam(name = "id", value = "电影id", dataType = "int", paramType = "query") })

public ResultModel deleteFilmByNameOrId(HttpServletRequest request) {

//电影名

String filmName = request.getParameter("filmName");

//电影id

Long filmId = Long.parseLong(request.getParameter("id"));

filmService.deleteFilmOrId(filmName,filmId);

return CommonConstants.getSuccessResultModel();

}

/**

* 根据id获取电影

*

* @param id

* @return

*/

@PostMapping("/{id}")

@ApiOperation("根据id获取电影")

@ApiImplicitParam(name = "id", value = "电影id", dataType = "long", paramType = "path", required = true)

public ResultModel getFilmById(@PathVariable Long id) {

if (Objects.isNull(id)) {

return CommonConstants.getLessParamResultModel();

}

Film film = filmService.getFilmById(id);

if (Objects.nonNull(film)) {

return new ResultModel(film);

}

return CommonConstants.getErrorResultModel();

}

/**

* 修改整个电影

*

* @param film

* @return

*/

@PostMapping("/insertFilm")

@ApiOperation("插入一部电影")

public ResultModel insertFilm(@ApiParam("电影实体对象") @RequestBody Film film) {

if (Objects.isNull(film)) {

return CommonConstants.getLessParamResultModel();

}

Boolean isSuccess = filmService.insertFilm(film);

if (isSuccess) {

return CommonConstants.getSuccessResultModel();

}

return CommonConstants.getErrorResultModel();

}

}

package com.youjia.swagger.controller;

import com.youjia.swagger.constants.CommonConstants;

import com.youjia.swagger.model.Film;

import com.youjia.swagger.model.ResultModel;

import com.youjia.swagger.service.FilmService;

import io.swagger.annotations.Api;

import io.swagger.annotations.ApiImplicitParam;

import io.swagger.annotations.ApiImplicitParams;

import io.swagger.annotations.ApiOperation;

import io.swagger.annotations.ApiParam;

import io.swagger.annotations.ApiResponse;

import io.swagger.annotations.ApiResponses;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.util.CollectionUtils;

import org.springframework.util.StringUtils;

import org.springframework.web.bind.annotation.GetMapping;

import org.springframework.web.bind.annotation.PathVariable;

import org.springframework.web.bind.annotation.PostMapping;

import org.springframework.web.bind.annotation.RequestBody;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestParam;

import org.springframework.web.bind.annotation.RestController;

import javax.servlet.http.HttpServletRequest;

import java.text.DateFormat;

import java.text.SimpleDateFormat;

import java.util.Date;

import java.util.List;

import java.util.Objects;

/**

* @Auther: wyq

* @Date: 2018/12/29 14:50

*/

@RestController

@Api(value = "电影Controller", tags = { "电影访问接口" })

@RequestMapping("/film")

public class FilmController {

@Autowired

private FilmService filmService;

/**

* 添加一个电影数据

*

* @param

* @return

*/

@ApiOperation(value = "添加一部电影")

@PostMapping("/addFilm")

@ApiResponses(value = { @ApiResponse(code = 1000, message = "成功"), @ApiResponse(code = 1001, message = "失败"),

@ApiResponse(code = 1002, response = Film.class,message = "缺少参数") })

public ResultModel addFilm(@ApiParam("电影名称") @RequestParam("filmName") String filmName,

@ApiParam(value = "分数", allowEmptyValue = true) @RequestParam("score") Short score,

@ApiParam("发布时间") @RequestParam(value = "publishTime",required = false) String publishTime,

@ApiParam("创建者id") @RequestParam("creatorId") Long creatorId) {

if (Objects.isNull(filmName) || Objects.isNull(score) || Objects.isNull(publishTime) || StringUtils

.isEmpty(creatorId)) {

return new ResultModel(ResultModel.failed, "参数错误");

}

Film filmPOM = new Film();

filmPOM.setFilmName(filmName);

filmPOM.setScore(score);

DateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");

Date publishTimeDate = null;

try {

publishTimeDate = simpleDateFormat.parse(publishTime);

} catch (Exception ex) {

ex.printStackTrace();

}

filmPOM.setPublishTime(publishTimeDate);

filmPOM.setCreatorId(creatorId);

Boolean result = filmService.addFilm(filmPOM);

if (result) {

return new ResultModel(CommonConstants.SUCCESSMSG);

}

return new ResultModel(CommonConstants.FAILD_MSG);

}

/**

* 根据电影名字获取电影

*

* @param fileName

* @return

*/

@GetMapping("/getFilms")

@ApiOperation(value = "根据名字获取电影")

@ApiResponses(value = { @ApiResponse(code = 1000, message = "成功"), @ApiResponse(code = 1001, message = "失败"),

@ApiResponse(code = 1002, message = "缺少参数") })

public ResultModel getFilmsByName(@ApiParam("电影名称") @RequestParam("fileName") String fileName) {

if (StringUtils.isEmpty(fileName)) {

return CommonConstants.getErrorResultModel();

}

List films = filmService.getFilmByName(fileName);

if (!CollectionUtils.isEmpty(films)) {

return new ResultModel(films);

}

return CommonConstants.getErrorResultModel();

}

/**

* 根据电影名更新

*

* @return

*/

@PostMapping("/updateScore")

@ApiOperation(value = "根据电影名修改分数")

@ApiResponses(value = { @ApiResponse(code = 1000, message = "成功"), @ApiResponse(code = 1001, message = "失败"),

@ApiResponse(code = 1002, message = "缺少参数") })

public ResultModel updateFilmScore(@ApiParam("电影名称") @RequestParam("fileName") String fileName,

@ApiParam("分数") @RequestParam("score") Short score) {

if (StringUtils.isEmpty(fileName) || Objects.isNull(score)) {

return CommonConstants.getErrorResultModel();

}

filmService.updateScoreByName(fileName, score);

return CommonConstants.getSuccessResultModel();

}

/**

* 根据电影名删除电影

*

* @param request

* @return

*/

@PostMapping("/delFilm")

@ApiOperation(value = "根据电影名删除电影")

@ApiImplicitParams({ @ApiImplicitParam(name = "filmName",

value = "电影名",

dataType = "String",

paramType = "query",

required = true), @ApiImplicitParam(name = "id", value = "电影id", dataType = "int", paramType = "query") })

public ResultModel deleteFilmByNameOrId(HttpServletRequest request) {

//电影名

String filmName = request.getParameter("filmName");

//电影id

Long filmId = Long.parseLong(request.getParameter("id"));

filmService.deleteFilmOrId(filmName,filmId);

return CommonConstants.getSuccessResultModel();

}

/**

* 根据id获取电影

*

* @param id

* @return

*/

@PostMapping("/{id}")

@ApiOperation("根据id获取电影")

@ApiImplicitParam(name = "id", value = "电影id", dataType = "long", paramType = "path", required = true)

public ResultModel getFilmById(@PathVariable Long id) {

if (Objects.isNull(id)) {

return CommonConstants.getLessParamResultModel();

}

Film film = filmService.getFilmById(id);

if (Objects.nonNull(film)) {

return new ResultModel(film);

}

return CommonConstants.getErrorResultModel();

}

/**

* 修改整个电影

*

* @param film

* @return

*/

@PostMapping("/insertFilm")

@ApiOperation("插入一部电影")

public ResultModel insertFilm(@ApiParam("电影实体对象") @RequestBody Film film) {

if (Objects.isNull(film)) {

return CommonConstants.getLessParamResultModel();

}

Boolean isSuccess = filmService.insertFilm(film);

if (isSuccess) {

return CommonConstants.getSuccessResultModel();

}

return CommonConstants.getErrorResultModel();

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值