【精品】IntelliJ 文件模板 创建 通用Controller

#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != “”)package ${PACKAGE_NAME};#end

import lombok.extern.slf4j.Slf4j;

import org.springframework.validation.BindingResult;

import org.springframework.validation.FieldError;

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

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.PutMapping;

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

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

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

import javax.annotation.Resource;

import javax.validation.constraints.Null;

import java.io.Serializable;

import java.util.List;

#parse(“File Header.java”)

@Slf4j

@RestController

@RequestMapping(“/${NameLowerFirst}”)

public class ${NAME} {

@Resource

private ${NameUpperFirst}Service ${NameLowerFirst}Service;

@PostMapping

public Result create(@RequestBody ${NameUpperFirst} ${NameLowerFirst}) {

boolean res = N a m e L o w e r F i r s t S e r v i c e . s a v e ( {NameLowerFirst}Service.save( NameLowerFirstService.save({NameLowerFirst});

return res ? ResultUtil.success(“添加成功”) : ResultUtil.fail(“添加失败”);

}

@PutMapping

public Result updateById(@RequestBody ${NameUpperFirst} ${NameLowerFirst}) {

boolean res = N a m e L o w e r F i r s t S e r v i c e . u p d a t e B y I d ( {NameLowerFirst}Service.updateById( NameLowerFirstService.updateById({NameLowerFirst});

return res ? ResultUtil.success(“更新成功”) : ResultUtil.fail(“更新失败”);

}

@DeleteMapping(“{id}”)

public Result removeById(@PathVariable Serializable id) {

boolean res = ${NameLowerFirst}Service.removeById(id);

return res ? ResultUtil.success(“删除成功”) : ResultUtil.fail(“删除失败”);

}

@GetMapping(“{id}”)

public Result<${NameUpperFirst}> getById(@PathVariable Serializable id) {

${NameUpperFirst} res = ${NameLowerFirst}Service.getById(id);

return ResultUtil.<${NameUpperFirst}>success(“查询成功”).setData(res);

}

@PostMapping

public Result<List<${NameUpperFirst}>> getByCondition(@RequestBody ${NameUpperFirst}Condition condition) {

List<${NameUpperFirst}> list = ${NameLowerFirst}Service.queryByCondition(condition);

return ResultUtil.<${NameUpperFirst}>success(“查询成功”).setData(list);

}

}

相关代码

结果类:Result.java

@Getter

@ToString

public class Result {

/**

  • 请求响应状态码

*/

private int code;

/**

  • 请求结果描述信息

*/

private String msg;

/**

  • 请求结果数据

*/

private T data;

public Result setCode(int code) {

this.code = code;

return this;

}

public Result setMsg(String msg) {

this.msg = msg;

return this;

}

public Result setData(T data) {

this.data = data;

return this;

}

protected Result(int code, String msg, T data) {

this.code = code;

this.msg = msg;

this.data = data;

}

}

结果工具类:ResultUtil.java

public class ResultUtil {

/**

  • 操作成功,返回具体的数据、结果码和提示信息

  • @return 结果

*/

public static Result success() {

final Result result = new Result(ResultEnum.OK.getCode(), ResultEnum.OK.getMsg(), null);

return result;

}

public static Result success(String msg) {

final Result result = new Result(ResultEnum.OK.getCode(), msg, null);

return result;

}

/**

  • 操作失败,返回具体的数据、结果码和提示信息

  • @return 结果

*/

public static Result fail() {

final Result result = new Result(ResultEnum.ERROR.getCode(), ResultEnum.ERROR.getMsg(), null);

return result;

}

public static Result fail(String msg) {

final Result result = new Result(ResultEnum.ERROR.getCode(), msg, null);

return result;

}

/**

  • 操作成功,返回具体的数据、结果码和提示信息

  • @param resultEnum 枚举

  • @return 结果

*/

public static Result success(ResultEnum resultEnum) {

final Result result = new Result(resultEnum.getCode(), resultEnum.getMsg(), null);

return result;

}

/**

  • 操作失败,返回具体的数据、结果码和提示信息

  • @param resultEnum 枚举

  • @return 结果

*/

public static Result fail(ResultEnum resultEnum) {

final Result result = new Result(resultEnum.getCode(), resultEnum.getMsg(), null);

return result;

}

public static void main(String[] args) {

Result r1 = ResultUtil.success().setMsg(“haha”);

System.out.println(r1);

System.out.println(r1.getMsg() == null);

System.out.println(r1.getMsg() instanceof String);

final Result r2 = ResultUtil.success(ResultEnum.OK);

System.out.println(r2);

final Result r3 = ResultUtil.success().setData(new Date());

final Result r4 = ResultUtil.success(ResultEnum.OK);

}

}

结果枚举类:ResultEnum.java

public enum ResultEnum {

/**

  • 成功

*/

OK(200, “Success”),

/**

  • 成功

*/

SUCCESS(200,“成功”),

/**

  • 找不到

*/

NOT_FOUND(404, “Not Found”),

/**

  • 服务器错误

*/

ERROR(500, “Server Error”),

/**

  • 参数不正确

*/

PARAM_ERROR(501,“Parameter Error”);

/**

  • 操作代码

*/

int code;

/**

  • 提示信息

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。**

[外链图片转存中…(img-Rywpmaw6-1715794756219)]

[外链图片转存中…(img-Bd4AlHq5-1715794756219)]

[外链图片转存中…(img-q9gs06hy-1715794756220)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值