最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java實(shí)現(xiàn)轉(zhuǎn)跳不同系統(tǒng)使用枚舉加switch的方式示例

 更新時(shí)間:2018年12月07日 11:14:40   作者:執(zhí)筆記憶的空白  
今天小編就為大家分享一篇關(guān)于Java實(shí)現(xiàn)轉(zhuǎn)跳不同系統(tǒng)使用枚舉加switch的方式示例,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧

因有個(gè)判斷需要處理不同系統(tǒng)類型跳轉(zhuǎn)不同系統(tǒng)??紤]用switch + 枚舉的方式。

具體使用案例如下:

package com.b2b.common.constant;
import com.base.utils.base.StringUtils;
/**
 * 系統(tǒng)類型枚舉
 * @author shijing
 */
public enum SystemType {
  ERP(0,"ERP"),
  ORDER_PLATFORM(1,"訂貨平臺(tái)"),
  PERSONAL(2,"個(gè)人中心系統(tǒng)"),
  SHOP_MALL(3,"商城"),
  PARTNER(4,"伙伴系統(tǒng)");
  private int value;
  private String desc;
  SystemType(int value ,String desc) {
    this.value = value;
    this.desc = desc;
  }
  public int getValue() {
    return value;
  }
  public String getDesc() {
    return desc;
  }
  /**
   * 通過(guò)value取枚舉
   * @param value
   * @return
   */
  public static SystemType getTypeByValue(String value){
    if (StringUtils.isNull(value)){
      return null;
    }
    int valueKey = Integer.parseInt(value);
    for (SystemType enums : SystemType.values()) {
      if (enums.getValue() == valueKey) {
        return enums;
      }
    }
    return null;
  }
  /**
   * 通過(guò)value取描述
   * @param value
   * @return
   */
  public static String getDescByValue(int value) {
    for (SystemType enums : SystemType.values()) {
      if (enums.getValue() == value) {
        return enums.getDesc();
      }
    }
    return "";
  }
}

switch+枚舉的使用案例:

/**
   * 區(qū)分不同系統(tǒng)類型,登錄不同系統(tǒng)
   * @author shijing
   * @param paramMap
   * @param checkData
   * @return
   * @throws Exception
   */
  private ErpResponse getLoginResponse(Map<String, Object> paramMap, ErpResponse checkData) throws Exception {
    ErpResponse loginData = null;
    Map<String,Object> user= (Map<String, Object>) checkData.getData();
    //獲取user的系統(tǒng)類型,然后區(qū)分是哪個(gè)系統(tǒng)實(shí)例用戶登錄
    String sysBaseType = (String) user.get("sys_base_type");
    SystemType systemType = SystemType.getTypeByValue(sysBaseType);
    switch(systemType){
      case ERP:
        erpLogin((String) user.get("user_id"));
        loginData.setData(user);
        break;
      case ORDER_PLATFORM:
        //訂貨平臺(tái)
        orderPlatformLoginByCheck(paramMap);
        loginData.setData(user);
        break;
      case PERSONAL:
        //個(gè)人中心
        loginData = personalLogin(user);
        break;
      default:
        LOGGER.info("系統(tǒng)類型不滿足");
        break;
    }
    return loginData;
  }

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

相關(guān)文章

  • 解決mybatis-plus3.4.1分頁(yè)插件PaginationInterceptor和防止全表更新與刪除插件SqlExplainInterceptor過(guò)時(shí)失效問(wèn)題

    解決mybatis-plus3.4.1分頁(yè)插件PaginationInterceptor和防止全表更新與刪除插件SqlE

    這篇文章給大家介紹了在Spring.xml文件中配置mybatis-plus3.4.1分頁(yè)插件PaginationInterceptor和防止全表更新與刪除插件SqlExplainInterceptor過(guò)時(shí)失效問(wèn)題解決方案,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2020-12-12
  • JavaWeb入門教程之分頁(yè)查詢功能的簡(jiǎn)單實(shí)現(xiàn)

    JavaWeb入門教程之分頁(yè)查詢功能的簡(jiǎn)單實(shí)現(xiàn)

    這篇文章主要介紹了JavaWeb入門教程之分頁(yè)查詢功能的簡(jiǎn)單實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • spring security獲取用戶信息的實(shí)現(xiàn)代碼

    spring security獲取用戶信息的實(shí)現(xiàn)代碼

    這篇文章主要介紹了spring security獲取用戶信息的實(shí)現(xiàn)代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • 基于opencv+java實(shí)現(xiàn)簡(jiǎn)單圖形識(shí)別程序

    基于opencv+java實(shí)現(xiàn)簡(jiǎn)單圖形識(shí)別程序

    這篇文章主要給大家介紹了如何基于opencv+java實(shí)現(xiàn)簡(jiǎn)單圖形識(shí)別程序的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2022-01-01
  • Java實(shí)現(xiàn)克魯斯卡爾算法的示例代碼

    Java實(shí)現(xiàn)克魯斯卡爾算法的示例代碼

    克魯斯卡爾算法是一種用于求解最小生成樹(shù)問(wèn)題的貪心算法。這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)克魯斯卡爾算法的方法,需要的可以參考一下
    2023-04-04
  • Java如何將String轉(zhuǎn)換成json對(duì)象或json數(shù)組

    Java如何將String轉(zhuǎn)換成json對(duì)象或json數(shù)組

    這篇文章主要介紹了Java如何將String轉(zhuǎn)換成json對(duì)象或json數(shù)組,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • java 實(shí)現(xiàn)計(jì)數(shù)排序和桶排序?qū)嵗a

    java 實(shí)現(xiàn)計(jì)數(shù)排序和桶排序?qū)嵗a

    這篇文章主要介紹了java 實(shí)現(xiàn)計(jì)數(shù)排序和桶排序?qū)嵗a的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • 深入了解Java線程池的原理使用及性能優(yōu)化

    深入了解Java線程池的原理使用及性能優(yōu)化

    JAVA線程池是一種管理和復(fù)用線程資源的機(jī)制,可以提高程序的效率和響應(yīng)速度。本文將介紹線程池的原理、使用方法和性能優(yōu)化技巧,幫助讀者深入了解和應(yīng)用JAVA線程池
    2023-04-04
  • 基于Transactional事務(wù)的使用以及注意說(shuō)明

    基于Transactional事務(wù)的使用以及注意說(shuō)明

    這篇文章主要介紹了Transactional事務(wù)的使用以及注意說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • Springboot之@Async不執(zhí)行原因及分析

    Springboot之@Async不執(zhí)行原因及分析

    這篇文章主要介紹了Springboot之@Async不執(zhí)行原因及分析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-09-09

最新評(píng)論

洪江市| 武川县| 芒康县| 金溪县| 定安县| 宜良县| 常州市| 八宿县| 巨野县| 沅陵县| 吉安县| 安阳县| 鹤峰县| 连州市| 长阳| 南溪县| 贡嘎县| 襄樊市| 龙州县| 商洛市| 开化县| 青田县| 衡东县| 清苑县| 马龙县| 波密县| 阳谷县| 河北区| 湟中县| 高平市| 昌邑市| 开平市| 孝义市| 铅山县| 广河县| 灯塔市| 厦门市| 顺义区| 蓬莱市| 盐山县| 连云港市|