当前位置: 首页 > news >正文

360免费自助建站外贸平台排名

360免费自助建站,外贸平台排名,网站后台怎么上传表格,湖北建设一、前言 假设有以下需求: 服务消费者A调用服务提供者B往MySQL新增一条人员信息服务提供者做了一个逻辑判断:若无该人员信息则新增,若已存在该人员信息,则返回给消费者异常状态码及异常信息:“请勿添加重复数据” 问…

一、前言


假设有以下需求:
  • 服务消费者A调用服务提供者B往MySQL新增一条人员信息
  • 服务提供者做了一个逻辑判断:若无该人员信息则新增,若已存在该人员信息,则返回给消费者异常状态码及异常信息:“请勿添加重复数据”

问题:

  • 通常新增、修改、删除服务无需返回,所以服务消费者无法获取服务提供者返回的异常状态码和异常信息
  • 对返回结果的封装一般在服务消费者,对公共接口的服务提供者通常不会做返回值封装

二、解决思路

  • 封装一个返回实体,作用于fegin调用时返回

三、实现

  • 返回实体
/*** 返回实体** @author Odinpeng* @since 2023/12/5*/
import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.Builder;
import lombok.Data;
import lombok.Getter;@Data
public class ResponseBody<T> {/*** 输出信息*/private String msg;/*** 返回数据*/@Builder.Default@JsonInclude(JsonInclude.Include.NON_NULL)private T body = null;/*** 状态码*/private int code;/*** 默认构造成功信息*/public ResponseBody() {this.code = ReturnStatus.SUCCESS.getVal();this.msg = ReturnStatus.SUCCESS.getMsg();}public ResponseBody(int code, String msg) {this.code = code;this.msg = msg;}public ResponseBody(int code, String msg, T body) {this.code = code;this.msg = msg;this.body = body;}public static <T> ResponseBody<T> success() {return new ResponseBody<>();}public static <T> ResponseBody<T> success(String msg) {return new ResponseBody<>(ReturnStatus.SUCCESS.getVal(), msg);}public static <T> ResponseBody<T> error(int code, String msg) {return new ResponseBody<>(code, msg);}public static <T> ResponseBody<T> error(String msg) {return new ResponseBody<>(ReturnStatus.ERROR.getVal(), msg);}public ResponseBody<T> code(int code) {this.code = code;return this;}public ResponseBody<T> msg(String msg) {this.msg = msg;return this;}public ResponseBody<T> body(T body) {this.body = body;return this;}
}@Getter
enum ReturnStatus {/*** 操作成功*/SUCCESS(200, "操作成功"),/*** 系统内部错误*/ERROR(500, "系统内部错误");/*** 状态*/private final int val;/*** 信息输出*/private final String msg;/*** 有参构造** @param val 状态码* @param msg 消息体*/ReturnStatus(int val, String msg) {this.val = val;this.msg = msg;}
}
  • Fegin调用
/*** test fegin** @author Odinpeng* @since 2023/12/5**/
@FeignClient(url = "url", path = "path", name = "name")
public interface TestFeign{/*** 保存*/@PostMapping("save")ResponseBody<?> save(@RequestBody Body body);/*** 修改*/@PostMapping("update")ResponseBody<?> update(@RequestBody Body body);/*** 删除*/@PostMapping("delete")ResponseBody<?> delete(@RequestBody Integer index);
}
http://www.ds6.com.cn/news/50814.html

相关文章:

  • 做网站要准备什么资料seo百度排名优化
  • 项目信息网站哪个好网络推广优化
  • 律师个人 网站做优化湖南省人民政府官网
  • 打开网站显示在建设中微信裂变营销软件
  • php怎么做网站360搜索首页
  • 名片在哪个网站可以做八大营销模式有哪几种
  • 没有网站想做个链接页面怎么做引流最好的推广方法
  • 连云港网站建设哪家好网推项目接单平台
  • 普通人怎么样做网站百度系优化
  • 高端网站建设webbj计算机培训
  • 网站开发功能合同信息推广的方式有哪些
  • 杭州公司排名网站优化公司推荐
  • 做后期的网站有哪些私域流量和裂变营销
  • 做网站做那一网站好苏州seo关键词优化方法
  • 网站是怎么建立的如何让新网站被收录
  • 郑州专业做网站多少钱广告推广网站
  • 太原学网站开发的学校企业网站推广方案的策划
  • 做统计的网站全网自媒体平台
  • 网络营销公司介绍广州优化疫情防控措施
  • 学生如何自己做网站在百度平台如何做营销
  • 淘宝客网站怎么做优化国际财经新闻
  • 什么是网站抄袭搜索引擎排名优化包括哪些方面
  • 哪些企业网站做的不错百度企业号
  • 天津做做网站如何优化搜索关键词
  • 开发网站需要多少资金友情链接交换网址大全
  • 国外做设备网站沈阳网站制作
  • 如何做seo网站国内最新新闻热点事件
  • 深圳做百度网站深圳百度seo培训
  • 什么亲子网站可以做一下广告软文素材网站
  • 网站建设排行百度快速收录3元一条