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

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

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

因有個判斷需要處理不同系統(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,"訂貨平臺"),
  PERSONAL(2,"個人中心系統(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;
  }
  /**
   * 通過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;
  }
  /**
   * 通過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ū)分是哪個系統(tǒng)實例用戶登錄
    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:
        //訂貨平臺
        orderPlatformLoginByCheck(paramMap);
        loginData.setData(user);
        break;
      case PERSONAL:
        //個人中心
        loginData = personalLogin(user);
        break;
      default:
        LOGGER.info("系統(tǒng)類型不滿足");
        break;
    }
    return loginData;
  }

總結(jié)

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

相關(guān)文章

  • 解決mybatis-plus3.4.1分頁插件PaginationInterceptor和防止全表更新與刪除插件SqlExplainInterceptor過時失效問題

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

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

    JavaWeb入門教程之分頁查詢功能的簡單實現(xiàn)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

最新評論

赤城县| 古蔺县| 津市市| 藁城市| 金寨县| 甘泉县| 兴山县| 泌阳县| 开鲁县| 东宁县| 承德市| 隆林| 讷河市| 襄汾县| 和硕县| 海丰县| 扎囊县| 乳源| 仪陇县| 鄢陵县| 胶南市| 东辽县| 阳朔县| 嵩明县| 巍山| 东兰县| 巍山| 清远市| 江油市| 沧源| 临城县| 满洲里市| 水富县| 额济纳旗| 珠海市| 伊通| 板桥市| 桦甸市| 玉门市| 清徐县| 太白县|