zoukankan      html  css  js  c++  java
  • 积累

    好玩儿的枚举:


    public interface RabbitMQTypeEnums {
    
        String SYSTEM_PREFIX = "tx";
        String SEPARATOR = "_";
        String ROUTING_KEY = "routingKey";
        String QUEUE_NAME = "queueName";
        /**
         * 子系统
         *
         * @return
         */
        String getSubSystem();
    
        /**
         * 业务key
         * @return
         */
        String getBusinessKey();
    
        /**
         * 获取routingkey
         * @return
         */
        default String getRoutingKey() {
            return SYSTEM_PREFIX + SEPARATOR + this.getSubSystem() + SEPARATOR + this.getBusinessKey()+ROUTING_KEY;
        }
        /**
         * 获取队列名字
         * @return
         */
        default String getQueueName() {
            return SYSTEM_PREFIX + SEPARATOR + this.getSubSystem() + SEPARATOR + this.getBusinessKey()+QUEUE_NAME;
        }
        @Getter
        @AllArgsConstructor
        enum COMMON implements RabbitMQTypeEnums {
            /**
             * 短链接 redis key
             */
            FILE_EXPORT_ROUTING_KEY("fileExport", "文件导出");
    
            private String businessKey;
            private String desc;
    
            @Override
            public String getSubSystem() {
                return SubSystemEnum.COMMON.getValue();
            }
        }
    
        @Getter
        enum SubSystemEnum {
    
            USER("user"),
            COURSE("course"),
            COMMON("common"),
            MARKET("market"),
            TASK("task"),
            ;
            private String value;
            SubSystemEnum(String value) {
                this.value = value;
            }
        }
    }

    interface+常量+default方法+enums

     好玩的 假饿汉模式


    @Data
    @Slf4j
    public class OrgPushCallInfoDto {
    
        private String statusStr;
        private String startTime;
        private String connectedTime;
        private String hangUpTime;
        private String duringTime;
        private String customerNumber;
        private String extention;
        private String connectedNumber;
        private String uniqueId;
        private String recordFile;
    
        public static OrgPushCallInfoDto of(HttpServletRequest request) {
            String statusStr = request.getParameter("status");
            String startTime = request.getParameter("call_start");
            String connectedTime = request.getParameter("connected_time");
            String hangUpTime = request.getParameter("hang_up_time");
            String duringTime = request.getParameter("during_time");
            String customerNumber = request.getParameter("customer_number");
            String extention = request.getParameter("extention");
            String connectedNumber = request.getParameter("connected_number");
            String uniqueId = request.getParameter("unique_id");
            String recordFile = request.getParameter("record_file");
    
            OrgPushCallInfoDto dto = new OrgPushCallInfoDto();
            dto.statusStr = statusStr;
            dto.startTime = startTime;
            dto.connectedTime = connectedTime;
            dto.hangUpTime = hangUpTime;
            dto.duringTime = duringTime;
            dto.customerNumber = customerNumber;
            dto.extention = extention;
            dto.connectedNumber = connectedNumber;
            dto.uniqueId = uniqueId;
            dto.recordFile = recordFile;
    
            log.info("receive record info:{}", dto);
            return dto;
        }
    
    }
  • 相关阅读:
    表达式执行工具方法
    Mysql表创建外键报错
    JVM打印加载类的详情信息
    Shell脚本查询进程存活信息
    旋转数组的最小数字
    斐波那契数列(水题)
    用两个栈实现队列
    变态跳台阶
    跳台阶
    9*9乘法表(5种输出格式)
  • 原文地址:https://www.cnblogs.com/toov5/p/10608869.html
Copyright © 2011-2022 走看看