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

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. Spring Web MVC(一)

    [toc] 概述 Spring的web框架围绕DispatcherServlet设计. DispatcherServlet的作用是将请求分发到不同的处理器. Spring的web框架包括可配置的处理器 ...

  2. 通过maven test 报org.apache.ibatis.binding.BindingException: Invalid bound statement

    背景 直接使用eclipse工具去执行,没有问题,通过testng.xml去执行,没有问题,但通过mvn clean test执行,就报错,提示org.apache.ibatis.binding.Bi ...

  3. /bin,/sbin,/usr/sbin,/usr/bin 目录

    这些目录都是存放命令的,首先区别下/sbin和/bin: 从命令功能来看,/sbin 下的命令属于基本的系统命令,如shutdown,reboot,用于启动系统,修复系统,/bin下存放一些普通的基本 ...

  4. 删除QQ登录界面的QQ账号信息

    删除QQ登录界面的QQ账号信息 .. ------------------- ------------------------ -------------------

  5. python版mapreduce题目实现寻找共同好友

    看到一篇不知道是好好玩还是好玩玩童鞋的博客,发现一道好玩的mapreduce题目,地址http://www.cnblogs.com/songhaowan/p/7239578.html 如图 由于自己太 ...

  6. Stream-快速入门Stream编程

    1.什么是流 Stream 不是集合元素,它不是数据结构并不保存数据,它是有关算法和计算的,它更像一个高级版本的 Iterator.原始版本的 Iterator,用户只能显式地一个一个遍历元素并对其执 ...

  7. Thinkjs学习1—概述及MVC的粗略理解

    1.概述 ThinkJS 是一款使用 ES6/7 特性全新开发的 Node.js MVC 框架,对于之前是纯前端的童鞋,可能不了解MVC框架是什么,不知道后台和前台怎么配合. 本教程以Thinkjs2 ...

  8. Java开发相关命名规范

    JAVA文件命名规范 1.类命名 抽象类以 Abstract 或者 Base 开头.异常类以 Exception 作为后缀.枚举类以 Enum 作为后缀.工具类以 Utils 作为后缀(相应的包名最后 ...

  9. WebSocket 连接关闭(代码:1006)

    前端WebSocket 连接关闭(代码:1006) function connect() { //判断当前浏览器是否支持WebSocket if ('WebSocket' in window) { w ...

  10. Vuejs 页面的区域化与组件封装

    组件的好处 当我用vue写页面的时候,大量的数据页面渲染,引入组件简化主页面的代码量,当代码区域块代码差不多相同时,组件封装会更加简化代码.组件是Vue.js最强大的功能之一. 组件可以扩展HTML元 ...