Java實現(xiàn)轉(zhuǎn)跳不同系統(tǒng)使用枚舉加switch的方式示例
更新時間:2018年12月07日 11:14:40 作者:執(zhí)筆記憶的空白
今天小編就為大家分享一篇關于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;
}
總結
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關內(nèi)容請查看下面相關鏈接
您可能感興趣的文章:
- 詳解java中if語句和switch的使用
- Java中switch的三種用法方式
- 淺談java switch如果case后面沒有break,會出現(xiàn)什么情況?
- java中的switch case語句使用詳解
- Java枚舉類型在switch語句正確使用方法詳解
- Java Switch對各類型支持實現(xiàn)原理
- Java switch使用原理及實例解析
- Java switch多值匹配操作詳解
- Java switch關鍵字原理及用法詳解
- JAVA字符串類型switch的底層原理詳析
- Java switch 語句如何使用 String 參數(shù)
- java中switch選擇語句代碼詳解
- Java中Switch用法代碼示例
- Java基礎之switch分支結構詳解
相關文章
詳解spring-boot集成elasticsearch及其簡單應用
本篇文章主要介紹了詳解spring-boot集成elasticsearch及其簡單應用,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-06-06
Spring3 整合MyBatis3 配置多數(shù)據(jù)源動態(tài)選擇SqlSessionFactory詳細教程
這篇文章主要介紹了Spring3 整合MyBatis3 配置多數(shù)據(jù)源動態(tài)選擇SqlSessionFactory詳細教程,需要的朋友可以參考下2017-04-04
Springboot整合SpringSecurity的完整案例詳解
Spring Security是基于Spring生態(tài)圈的,用于提供安全訪問控制解決方案的框架,Spring Security登錄認證主要涉及兩個重要的接口 UserDetailService和UserDetails接口,本文對Springboot整合SpringSecurity過程給大家介紹的非常詳細,需要的朋友參考下吧2024-01-01
利用Java異常機制實現(xiàn)模擬借書系統(tǒng)
這篇文章主要給大家介紹了利用Java異常機制實現(xiàn)模擬借書系統(tǒng)的相關資料,文中先對java異常機制進行了簡單介紹,而后通過示例代碼介紹了java語言是如何實現(xiàn)一個控制臺版的模擬借書系統(tǒng),需要的朋友可以參考學習,一起來看看吧。2017-04-04

