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

做动物网站的原因是seo站内优化教程

做动物网站的原因是,seo站内优化教程,哪些人不适合学平面设计,asp.net做网站吗目录 1.统一数据格式返回 2.统一异常处理 3.接口返回String类型问题 1.统一数据格式返回 添加ControllerAdvice注解实现ResponseBodyAdvice接口重写supports方法,beforeBodyWrite方法 /*** 统一数据格式返回的保底类 对于一些非对象的数据的再统一 即非对象的封…

目录

1.统一数据格式返回

2.统一异常处理

3.接口返回String类型问题


1.统一数据格式返回

  1. 添加@ControllerAdvice注解
  2. 实现ResponseBodyAdvice接口
  3. 重写supports方法,beforeBodyWrite方法
/*** 统一数据格式返回的保底类 对于一些非对象的数据的再统一 即非对象的封装成对象再返回*/
@ControllerAdvice //控制器通知类
public class ResponseAdvice implements ResponseBodyAdvice {@Autowiredprivate ObjectMapper objectMapper;/*** 开关* true表示返回结果作统一处理* false不处理*/@Overridepublic boolean supports(MethodParameter returnType, Class converterType) {return true;}// 该方法具体实现统一返回   @SneakyThrows@Overridepublic Object beforeBodyWrite(Object body, MethodParameter returnType, MediaType selectedContentType, Class selectedConverterType, ServerHttpRequest request, ServerHttpResponse response) {if(body instanceof AjaxResult) {return body;}// 字符串比较特殊 是由于序列化问题导致// 对于字符串类型,可以使用SpringBoot提供的Jackson实现信息的序列化if(body instanceof String) {return objectMapper.writeValueAsString(body);}return AjaxResult.success("",body);}
}

String类型需要特殊处理的原因:类型转换异常。即序列化问题。

 由于我设置了统一返回类(code,msg,data),String类型的数据在上面第一步(返回的body中)就已经被包装成一个对象了,后续传参也都是泛型,直到调用 addDefaultHeaders 方法,接收却是String类型的。对象是不能自动转成String类型的。并且是String类型才会走上面的流程。

解决办法就是使用SpringBoot提供的Jackson库,可以将对象转成Json格式的字符串。即序列化。


2.统一异常处理

  1. 加ControllerAdvice注解(控制器通知类)
  2. 加ResponseAdvice注解(类上或方法上,表示返回的是非页面的数据)
  3. 加ExceptionHandler注解(在每个方法上加)
/*** 捕获项目运行中出现的异常,并进行统一异常的返回* 捕获流程 先捕获匹配具体的异常,没找到(即我们没定义),再往上到RunTimeException,没匹配到,就再往上到Exception 即按照异常继承关系往上找* 能不能捕获到具体的异常,要看我们自定义的方法中有没有写具体的异常*/
@ResponseBody //务必加 才能返回数据类型 不加返回页面 可以加类上或方法上
@ControllerAdvice
public class ErrorHandler {@ExceptionHandlerpublic AjaxResult handler(Exception e) {return AjaxResult.fail("内部发生异常");}@ExceptionHandlerpublic AjaxResult handler(RuntimeException e) {return AjaxResult.fail("内部发生异常");}@ExceptionHandlerpublic AjaxResult handler(NullPointerException e) {return AjaxResult.fail("空指针异常");}@ExceptionHandlerpublic AjaxResult handler(ArithmeticException e) {return AjaxResult.fail("算术异常");}}

3.接口返回String类型问题

接口返回String类型的数据时,需要转Json格式 。所以尽量少用,直接将String类型的数据包装在对象中返回即可。

http://www.hrbkazy.com/news/14104.html

相关文章:

  • 网页制作培训教学上海关键词排名优化怎样
  • 网站建设应该注意哪些原则友情链接实例
  • 做网站还有价值吗seo外链技巧
  • 网站认证金额怎么做分录谷歌官网入口
  • 做网站做得好的公司龙岗网站设计
  • 永安城乡建设局网站看网站搜索什么关键词
  • wordpress 关键词链接seo搜索排名
  • 网站更新和维护怎么做seo优化培训学校
  • 广西壮族自治区卫生健康委员会网站广告搜索引擎
  • 建一个公司网站费用最佳的资源磁力搜索引擎
  • 深圳大型网站建设公司在线培训
  • 备案的域名拿来做别的网站如何开发一款app软件
  • 网站建设费用属于业务宣传费吗温州seo按天扣费
  • 政府网站建设的规范推广普通话作文
  • 学php网站开发九幺seo工具
  • 郑州企业建站模板防疫测温健康码核验一体机
  • 网站怎么防采集如何提高网站搜索排名
  • 无锡定制网站制作公司自助建站免费建站平台
  • 建设银行网站开通查询密码自己建网站怎样建
  • 网站制线上营销平台
  • 织梦做音乐网站百度推广后台登陆入口
  • 武汉营销型网站制作公司企业网站设计素材
  • 图表统计类手机网站开发关键词查询优化
  • 长沙 网站设计 公司发外链软件
  • 网站开发设计的源码百度seo提高排名费用
  • 用prestashop做网站网站快速排名推荐
  • 中国网站备案取消企业网站营销的优缺点及案例
  • php cms北京seo网站优化公司
  • 石家庄行业网站怎么做电商
  • 华仁建设网站企业全网推广