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

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. Thinking in Java系列 文档+代码+简评

    声明:本人无意侵犯原作者的版权,这里可下载的文档都属于作者自行开放下载的,统一放置在这里是因为不可预测的原因使得原文档和代码不方便下载,故将我所收集的内容统一在这里,如果这里的内容侵犯了别人,请告知我 ...

  2. js把星期由数字转换为星期名称

    //由星期的数字转换为星期的名称,date格式:2016-01-07,用"-"分割 function toWeekName(date) { var newDate = new Da ...

  3. Swift语言中与C/C++和Java不同的语法(五)

    这一节将会提到Swift中其他的关于函数的应用,这些内容包括有: 默认参数值和可变参数值.常量参数.返回函数类型和函数嵌套: 一.默认参数值和可变参数值 对默认参数值是指在函数的声明中就已经定义了参数 ...

  4. 不安装vc2015 Redistributable解决api-ms-win-crt-runtime-l1-1-0.dll丢失错误

    一.背景 最近用到python下的cx_Oracle模块,开发环境中测试正常,用cx_freeze打包后,到用户机器上一部署,各种奇奇怪怪的问题频出,运行环境如下: a.开发环境:64位win10操作 ...

  5. 把elipse非maven的Struts2+Spring+Ibatis项目导入Idea中

    1.按图示操作 2.选中自己要得到的项目 3.之后设定得到的项目放在哪里 项目得到之后,对项目点击右键Open Module Settings,点击Project,设置生成的编译文件存储路径 4.单击 ...

  6. vue.js基础知识篇(4):过滤器、class与style的绑定2

    代码下载:网盘 欢迎私信 第一章:过滤器 过滤器是对数据进行处理并返回结果的函数. 1.语法 语法是使用管道符"|"进行连接.过滤器可以接收参数,跟在过滤器后面,带引号的参数被当做 ...

  7. .NET CORE 学习笔记之安装EF【Microsoft.EntityFrameworkCore】扩展报错

    最近在学习.NET CORE ,刚开始就遇到问题了. 安装EF框架的试试就报错, 报错如下: 错误 程序包还原失败.正在回滚“XXX”的程序包更改. 找了好久的方案,网上也没搜到对应的问题和方案,然而 ...

  8. Spark Mllib框架1

    1. 概述 1.1 功能 MLlib是Spark的机器学习(machine learing)库,其目标是使得机器学习的使用更加方便和简单,其具有如下功能: ML算法:常用的学习算法,包括分类.回归.聚 ...

  9. 面向对象五大原则(SRP、OCP、LSP、DIP、ISP)

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt173 OO的五大原则是指 1. SRP(Single Responsibil ...

  10. oracle数据块核心剖析

    详见: http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytp57 数据块(Oracle Data Blocks),本文简称为" ...