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

顺德做网站的公司互联网推广的好处

顺德做网站的公司,互联网推广的好处,宁阳网站定制,ecs wordpress ubuntu1. 前言 在实际开发过程中,前端的下拉框或者单选按钮的内容通常的需要和后端匹配的,故一般会由后端将下拉框的内容或单选框的内容传给前端,而这些内容在后端一般是由枚举类存储的,如果后端直接返回枚举类,返回结果将会…

1. 前言

在实际开发过程中,前端的下拉框或者单选按钮的内容通常的需要和后端匹配的,故一般会由后端将下拉框的内容或单选框的内容传给前端,而这些内容在后端一般是由枚举类存储的,如果后端直接返回枚举类,返回结果将会是枚举类的名称,而不是枚举类中的字段内容,这不是我们想要的结果。

2. 示例代码:

2.1 controller

package com.suhuamo.test.controller;import com.suhuamo.test.enums.OpenStatusEnum;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;/*** @author suhuamo* @date 2024-05-26* @slogan U R MY SPECIAL* @description*/
@RestController
@RequestMapping("/test")
public class TestController {/*** 获取当前开关状态* @return OpenStatusEnum* {@link com.suhuamo.test.enums.OpenStatusEnum}* @version 1.0* @author suhuamo*/@GetMapping("/open-status/now")public OpenStatusEnum getOpenStatus(){return OpenStatusEnum.OPEN;}
}

2.2 enum代码

package com.suhuamo.test.enums;import lombok.Getter;/*** @author suhuamo* @date 2024-05-26* @slogan 五秒钟内说出三个你爱的人的名字...5..4..3..2..1..你是不是没有说自己,也要爱自己哦。* @description 开关状态枚举类*/
@Getter
public enum OpenStatusEnum {CLOSE(0, "关闭"),OPEN(1, "开启");/*** 类型*/private final Integer type;/*** 描述*/private final String desc;OpenStatusEnum(Integer type, String desc) {this.type = type;this.desc = desc;}public Integer getType() {return type;}public String getDesc() {return desc;}/*** 根据类型获取枚举,当无该类型时,返回null** @param type* @return OpenStatus*/public static OpenStatusEnum getByType(Integer type) {for (OpenStatusEnum itemEnum : OpenStatusEnum.values()) {if (itemEnum.getType().equals(type)) {return itemEnum;}}return null;}
}

3. 目前输出效果

在浏览器中输入:localhost:{端口}/test/open-status/now即可访问。【我配置的项目端口是8888,故端口输入的是8888
image.png

4. 解决办法

在枚举类上添加注解 @JsonFormat(shape = JsonFormat.Shape.OBJECT)
即枚举类的代码修改为:

package com.suhuamo.test.enums;import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Getter;/*** @author suhuamo* @date 2024-05-26* @slogan 五秒钟内说出三个你爱的人的名字...5..4..3..2..1..你是不是没有说自己,也要爱自己哦。* @description 开关状态枚举类*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
@Getter
public enum OpenStatusEnum {CLOSE(0, "关闭"),OPEN(1, "开启");/*** 类型*/private final Integer type;/*** 描述*/private final String desc;OpenStatusEnum(Integer type, String desc) {this.type = type;this.desc = desc;}public Integer getType() {return type;}public String getDesc() {return desc;}/*** 根据类型获取枚举,当无该类型时,返回null** @param type* @return OpenStatus*/public static OpenStatusEnum getByType(Integer type) {for (OpenStatusEnum itemEnum : OpenStatusEnum.values()) {if (itemEnum.getType().equals(type)) {return itemEnum;}}return null;}
}

5. 解决后输出效果

image.png

6. 复盘结论

  1. 出现问题的原因是因为在调用接口返回数据时,所有的对象都会被转换为JSON格式发送给前端,而枚举类的JSON格式的内容默认是枚举值的名称。
  2. 加上注解@JsonFormat(shape = JsonFormat.Shape.OBJECT)就可以解决问题的原因是因为在转换JSON格式时,带有该注解可以将对象按照对象的形式进行序列化,即**<字段名称,字段内容>**的键值对形式进行序列化。
  3. 附带的问题就是反序列化会出现问题,即存入Redis时没问题,但是取出有问题的。【故建议不要存Redis
http://www.ds6.com.cn/news/46542.html

相关文章:

  • 找做网站查排名网站
  • 网站logo怎么做动态图长春网站制作方案定制
  • python php网站开发网络营销主要学什么
  • 网站建设系统公司地址seo关键词优化价格
  • 网站建设项目价格三只松鼠营销案例分析
  • 散文网站模板sem是什么意思
  • 青海网站建设价格低刚刚济南发通知
  • 网站开发费用怎么账务处理百度站长工具数据提交
  • 汉中网站建设汉中品牌的宣传及推广
  • 网站开发前端php 后端pythonseo专员招聘
  • wordpress on line 66seo排名点击首页
  • 达尔罕茂明安网站建设苏州seo网站管理
  • 什么网站能找到做展览的工人推广优化方案
  • 济南的网站建设公司2345网址导航怎么彻底删掉
  • 建设通属于什么网站省好多会员app
  • wordpress 中介网站百度收录查询网址
  • 网站备案相关手续费链接地址
  • 网站消耗流量百度网页版浏览器
  • 在酒吧里做那个视频网站郑州网站设计有哪些
  • wordpress 下载按钮插件象山seo外包服务优化
  • 怎么做网站演示semir是什么意思
  • 2014网站seo简述网站建设的流程
  • 凡高网站建设品牌推广的目的和意义
  • 十堰做网站的公司网站在线优化检测
  • 哪个网站做高仿衣服批发灰色词排名接单
  • 商城网站建设服务哪家好海口关键词优化报价
  • 免费建设网站的画出中国进入一级战备2023
  • 网站建设公司咋样如何快速优化网站排名
  • 网站制作最连云港网站seo
  • 平台建站建设广告设计