Java實現(xiàn)將枚舉類轉為json并返回給前端
更新時間:2023年12月21日 10:13:16 作者:funfan0517
這篇文章主要為大家詳細介紹了Java實現(xiàn)將枚舉類轉為json并返回給前端的相關知識,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下
1.后端將枚舉類直接返回給前端時只會顯示枚舉名稱
后端經常會使用到枚舉類,想讓前端知曉這個枚舉類中常量的含義,要將其返回給前端。
直接返回枚舉類的話,前端只會顯示枚舉名稱,不是很友好。
2.使用 @JsonFormat 注解可以將枚舉類轉為json再返回給前端。
2.1添加maven依賴
<dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> </dependency>
2.2在枚舉類上添加@JsonFormat(shape = JsonFormat.Shape.OBJECT)
import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Getter; @Getter @JsonFormat(shape = JsonFormat.Shape.OBJECT) public enum PhaseEnum { //0:接地端,1:導線端A相, 2: 導線端B相,3: 導線端C相,4: 接地端A相,5: 接地端B相,6: 接地端C相 PHASE_0(0, "接地端"), PHASE_1(1, "導線端A相"), PHASE_2(2, "導線端B相"), PHASE_3(3, "導線端C相"), PHASE_4(4, "接地端A相"), PHASE_5(5, "接地端B相"), PHASE_6(6, "接地端C相"); private final Integer code; private final String name; PhaseEnum(Integer code, String name) { this.code = code; this.name = name; } /** *根據name查code **/ public static Integer getCodeByName(String name) { for (PhaseEnum phaseEnum : PhaseEnum.values()) { if (phaseEnum.getName().equals(name)) { return phaseEnum.getCode(); } } return null; } /** *根據name查枚舉類 **/ public static PhaseEnum getPhaseEnum(String name) { for (PhaseEnum temp : PhaseEnum.values()) { if (temp.getName().equals(name)) { return temp; } } return null; } }
2.3編寫接口返回給前端
/** * 獲取地線部件的相位枚舉 **/ @RequestMapping(value = "/getEarthwirePhase.do", method = {RequestMethod.GET}) @ResponseBody @ApiOperation(value = "獲取地線部件的相位枚舉", notes = "獲取地線部件的相位枚舉") public Object getEarthwirePhase() { return RestResponse.success(PhaseEnum.values()); }
到此這篇關于Java實現(xiàn)將枚舉類轉為json并返回給前端的文章就介紹到這了,更多相關Java枚舉類轉為json內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Javamelody監(jiān)控不到sql的問題(親測有效)??
JavaMelody是用來在QA和實際運行生產環(huán)境中監(jiān)控Java或Java?EE應用程序服務器的一個開源框架,這篇文章主要介紹了Javamelody監(jiān)控不到sql(親測有效)??,需要的朋友可以參考下2022-10-10flowable動態(tài)創(chuàng)建多級流程模板實現(xiàn)demo
這篇文章主要為大家介紹了flowable動態(tài)創(chuàng)建多級流程模板實現(xiàn)demo,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-05-05