一个典型的枚举应用的例子

package opstools.vtm.dictionary.enums;

import opstools.framework.view.ResourceValue;

/**
 *
 *  总行业务管理员         ROLE_ROOT_BUSINESS   总行业务参数管理
    总行系统管理员      ROLE_ROOT_SYSTEM     总行系统参数管理   业务管理员             ROLE_BUSINESS       分行业务参数管理
    运行管理员             ROLE_RUNNING      分行运行参数管理
    系统管理员             ROLE_SYSTEM     分行系统参数管理

    字典列表枚举
     {1:'总行系统参数',2:'总行业务参数',3:'分行系统参数',4:'分行业务参数',5:'分行运行参数'}
     */

public enum RoleBank {

    HEAD_BUSS_MANAGER("ROLE_ROOT_BUSINESS", 2,"总行业务参数") ,             //总行业务管理员
    HEAD_SYS_MANAGER("ROLE_ROOT_SYSTEM", 1,"总行系统参数"),                //总行系统管理员
    BRANCH_SYS_MANAGER("ROLE_SYSTEM", 3,"分行系统参数"),                //分行系统管理员
    BRANCH_BUSS_MANAGER("ROLE_BUSINESS", 4,"分行业务参数"),                //分行业务管理员
    BRANCH_RUN_MANAGER("ROLE_RUNNING", 5,"分行运行参数");                //分行运行管理员

    private String roleCode;         //角色码
    private Integer paramValue;        //字典值Id
    private String paramName;         //字典名称

    private RoleBank(String roleCode, Integer paramValue, String paramName) {
        this.roleCode = roleCode;
        this.paramValue = paramValue;
        this.paramName = paramName;
    }

    /**
     * 根据角色码获取字典值和名称
     * @param roleCode
     * @return
     */
    public static String getParamListByRoleCode(String roleCode) {

        for (RoleBank em : RoleBank.values()) {
            if(roleCode.equals(em.getRoleCode())){
                return em.getParamValue()+","+em.getParamName();
            }
        }
        return null;
    }

    /**
     * 根据角色码获取字典值和名称,以ResourceValue的形式返回
     * @param roleCode
     * @return
     */
    public static ResourceValue getParamResourceByRoleCode(String roleCode) {

        for (RoleBank em : RoleBank.values()) {
            if(roleCode.equals(em.getRoleCode())){
                return new ResourceValue(em.getParamName(),em.getParamValue());
            }
        }
        return null;
    }

    public String getRoleCode() {
        return roleCode;
    }

    public void setRoleCode(String roleCode) {
        this.roleCode = roleCode;
    }

    public Integer getParamValue() {
        return paramValue;
    }

    public void setParamValue(Integer paramValue) {
        this.paramValue = paramValue;
    }

    public String getParamName() {
        return paramName;
    }

    public void setParamName(String paramName) {
        this.paramName = paramName;
    }        

}

java-枚举一些字典信息的例子的更多相关文章

  1. 如何理解java枚举,看例子

    先来看一下不用枚举怎么表示常量: //常量类 class Num { public static String ONE = "ONE"; public static String ...

  2. 使用javap进行反编译Java枚举

    这是一个枚举类Day.java public enum Day { MONDAY("星期一"), TUESDAY("星期二"), WEDNESDAY(" ...

  3. java枚举怎么用的

    package com.pingan.property.icore.pap.common.constants; /** * */public enum UMAuthStatusEnum impleme ...

  4. 深入理解Java枚举

    深入理解Java枚举 重新认识Java枚举 老实说,挺羞愧的,这么久了,一直不知道Java枚举的本质是啥,虽然也在用,但是真不知道它的底层是个啥样的 直到2020年4月28日的晚上20点左右,我才真的 ...

  5. 恕我直言,我怀疑你并不会用 Java 枚举

    开门见山地说吧,enum(枚举)是 Java 1.5 时引入的关键字,它表示一种特殊类型的类,默认继承自 java.lang.Enum. 为了证明这一点,我们来新建一个枚举 PlayerType: p ...

  6. Java 枚举用法详解

    概念 enum 的全称为 enumeration, 是 JDK 1.5 中引入的新特性. 在Java中,被 enum 关键字修饰的类型就是枚举类型.形式如下: enum Color { RED, GR ...

  7. .NET获取枚举DescriptionAttribute描述信息性能改进的多种方法

    一. DescriptionAttribute的普通使用方式 1.1 使用示例 DescriptionAttribute特性可以用到很多地方,比较常见的就是枚举,通过获取枚举上定义的描述信息在UI上显 ...

  8. java 枚举类型分析

    最近做android开发,需要用到枚举值,这样可以连续赋值,我按之前c++那样书写,如下所示: public enum ColorSelect { RED_BAGE = 0, GREEN_BAGE, ...

  9. 【转】java枚举类型enum的使用

    原文网址:http://blog.csdn.net/wgw335363240/article/details/6359614 java 枚举类型enum 的使用 最近跟同事讨论问题的时候,突然同事提到 ...

随机推荐

  1. registry key 'Java Runtime Environment' has value'1.8',but '1.7' is requaired(转)

    当更新jdk后,运行java命令可能会提示类似这样registry key 'Java Runtime Environment' has value'1.8',but '1.7' is requair ...

  2. DHCP解析

    DHCP解析... ------------------------ DHCP的工作原理: ====================== ======================DHCP动态主机地 ...

  3. 介绍maven构建的生命周期

    介绍maven构建的生命周期 这篇是 https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html 的 ...

  4. matplotlib 填充颜色

    def huitu_host(nodes,total): x = np.arange(len(nodes)) plt.figure(figsize=(9,5)) plt.xticks(x,nodes) ...

  5. linux source命令与export命令的区别

    shell与export命令 用户登录到Linux系统后,系统将启动一个用户shell.在这个shell中,可以使用shell命令或声明变量,也可以创建并运行shell脚本程序.运行shell脚本程序 ...

  6. Eclipse知识

    http://www.runoob.com/eclipse/eclipse-create-jar-files.html Eclipse 生成jar包 打开 Jar 文件向导 Jar 文件向导可用于将项 ...

  7. 高级java高并发,高性能,分布式,高可用,负载均衡,系统架构实战

    java架构师.集群.高可用.高可扩 展.高性能.高并发.性能优化.Spring boot.Redis.ActiveMQ.Nginx.Mycat.Netty.Jvm大型分布 式项目实战 视频课程包含: ...

  8. 【搬运工】之YSlow安装教程

    YSlow安装教程(我只是搬运工,推荐好用的地址) 地址: https://devework.com/yslow.html YSlow (解析为 why slow)是雅虎基于网站优化规则推出的工具,帮 ...

  9. Docker 集群环境实现的新方式

    近几年来,Docker 作为一个开源的应用容器引擎,深受广大开发者的欢迎.随着 Docker 生态圈的不断建设,应用领域越来越广.云计算,大数据,移动技术的快速发展,加之企业业务需求的不断变化,紧随技 ...

  10. 从送外卖到建站售主机还有共享自行车说起-2017年8月江西IDC排行榜与发展报告

    曾几何时,送外卖,这样的"低技术含量"工作,很难被互联网公司看上,直到百度将其当作连接终端用户与大数据的管道. 同样,销售主机域名和建站业务,本也是"微小体量" ...