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

在阿里巴巴上做网站需要什么软件免费推广方法

在阿里巴巴上做网站需要什么软件,免费推广方法,企业网站建设建设,pc 手机网站建设目录 统一数据返回一. 概念二.实现统一数据返回2.1 重写responseAdvice方法2.2 重写beforeBodyWriter方法 三. 特殊类型-String的处理四. 全部代码 统一数据返回 一. 概念 其实统一数据返回是运用了AOP(对某一类事情的集中处理)的思维,简单…

目录

  • 统一数据返回
    • 一. 概念
    • 二.实现统一数据返回
      • 2.1 重写responseAdvice方法
      • 2.2 重写beforeBodyWriter方法
    • 三. 特殊类型-String的处理
    • 四. 全部代码

统一数据返回

一. 概念

其实统一数据返回是运用了AOP(对某一类事情的集中处理)的思维,简单概括就是在我们进行前后端数据交互的时候,能够让后端的数据进行统一的打包封装,返回给前端,便于前后端的数据处理。

二.实现统一数据返回

其实统一数据返回非常简单,在实现时要加入类注解@ControllerAdvice(这是一个表示控制通知的注解,在接下来的统一异常处理也要运用到),在添加类注解后还要在实现ResponseBodyAdvice接口,然后重写接口的responseAdvice接口和beforeBodyWriter方法即可实现。

  1. 添加类注解@ControllerAdvice,实现接口ResponseBodyAdvice
  2. 重写responseAdvice方法
  3. 重写beforeBodyWriter方法
  4. 特殊数据类型特殊处理(String)

2.1 重写responseAdvice方法

responseAdvice方法如下:
在这里插入图片描述

@Override
public boolean supports(MethodParameter returnType, Class converterType) {return true;
}

可以看到,重写该方法主要返回的是Boolean数据类型,返回false表示不执行统一返回,返回true表示对于所有的数据类型都进行数据统一返回。

supports方法:判断是否要执行beforeBodyWrite方法.true为执行,false不执行.通过该方法可以
选择哪些类或哪些方法的response要进行处理,其他的不进行处理

2.2 重写beforeBodyWriter方法

beforeBodyWriter方法如下:
在这里插入图片描述
beforeBodyWrite方法:对response方法进行具体操作处理

其中的参数body最为重要,如果想要对统一后的数据进行格式的转换,直接转换body的格式就行,因为这里的body代指了所有的数据格式。

三. 特殊类型-String的处理

在经过多次不同的数据类型测试后发现,其它类型就可以顺利返回,而String类型却返回不正确。

对于String的数据类型如果想要返回,我们要先引入ObjectMapper,通过调用ObjeceMapper的writeValueAsString()方法来把body的数据格式给转换成Json格式,然后再次进行统一返回即可。

进行数据转换的代码如下:

private static ObjectMapper mapper = new ObjectMapper();@Override
public Object beforeBodyWrite(Object body, MethodParameter returnType,MediaType selectedContentType, Class selectedConverterType,ServerHttpRequestrequest, ServerHttpResponse response) {//如果返回结果为String类型, 使⽤SpringBoot内置提供的Jackson来实现信息的序列化if (body instanceof String){return mapper.writeValueAsString(Result.success(body));}}

四. 全部代码

import com.example.demo.model.Result;
import com.fasterxml.jackson.databind.ObjectMapper;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
import org.springframework.core.MethodParameter;
import org.springframework.http.MediaType;
import org.springframework.http.server.ServerHttpRequest;
import org.springframework.http.server.ServerHttpResponse;
import org.springframework.web.bind.annotation.ControllerAdvice;
import
org.springframework.web.servlet.mvc.method.annotation.ResponseBodyAdvice;@Slf4j
@ControllerAdvice
public class ResponseAdvice implements ResponseBodyAdvice {private static ObjectMapper mapper = new ObjectMapper();@Overridepublic boolean supports(MethodParameter returnType, Class converterType) {return true;}@SneakyThrows@Overridepublic Object beforeBodyWrite(Object body, MethodParameter returnType,MediaType selectedContentType, Class selectedConverterType, ServerHttpRequestrequest, ServerHttpResponse response) {//返回结果更加灵活if (body instanceof Result){return body;}//如果返回结果为String类型, 使⽤SpringBoot内置提供的Jackson来实现信息的序列化if (body instanceof String){return mapper.writeValueAsString(Result.success(body));}return Result.success(body);}
}
  1. 方便前端程序员更好的接收和解析后端数据接口返回的数据
  2. 降低前端程序员和后端程序员的沟通成本,按照某个格式实现就可以了,因为所有接口都是这样返回
    的.
  3. 有利于项目统⼀数据的维护和修改.
  4. 有利于后端技术部门的统⼀规范的标准制定,不会出现稀奇古怪的返回内容.
http://www.zhongyajixie.com/news/65215.html

相关文章:

  • 河北企业建站品牌营销策划公司排名
  • 宁波网站建设哪家好百度网盘官网入口
  • 公司注册网站入口郑州网站营销推广
  • 音乐介绍网站怎么做杭州百度推广开户
  • 高水平大学建设大学网站公司网站搭建
  • 如何管理好一个团队河南做网站优化
  • 企业网站建设运营的灵魂排名怎么优化快
  • 网站模版防被偷东莞做网站公司首选
  • 宝安网站优化下载百度安装到桌面
  • 邯郸做网站询安联网络吉林seo网络推广
  • 做购物网站百度营业执照怎么办理
  • 表白二维码图片seo外包品牌
  • wordpress官方主题教程seo自动优化工具
  • 哪里有免费的网站模板下载网站优化排名服务
  • 不参与网站建设的弊端运营推广的方式和渠道
  • 做网站 写脚本是什么西安推广平台排行榜
  • seo搜索引擎入门教程湖北seo诊断
  • 一个数据库怎么做二个网站搜索引擎优化效果
  • 网页设计图片免费seo线上培训多少钱
  • 公司网站建设需求说明书网站外链发布平台
  • 网站定制开发是什么意思女教师网课入06654侵录屏
  • 公司网站建设准备资料营销推广活动策划书模板
  • 网站制作小工具搜索引擎优化的要点
  • 吉安市网站制作2022年十大流行语
  • 网站建设和维护释义seo概念
  • 黑龙江建设教育信息网站首页shodan搜索引擎
  • 服务网站建设的公司专业北京网站建设公司
  • 做网站赚钱么郑州seo优化顾问阿亮
  • 对电子商务网站建设与管理的心得企业网站设计优化公司
  • 怎么做网站旺铺装修色盲测试图动物