zoukankan      html  css  js  c++  java
  • Java设计模式(三)单例模式

    一、场景描述

    在采集到仪器数据后,需要将数据发送到lims系统中,通过调用lims系统服务实现数据的上传。

    在仪器数据采集组件中实现lims系统服务代理,该代理需要指定服务地址url,认证信息(用户名、密码)。

    因此创建该代理需要耗费一些资源,另外该代理并不需要创建多个实例,此种情况下就可以使用单例模式,使得仅创建一个服务代理类实例。

    二、实现示例

    package lims.designpatterndemo.singletondemo;
    
    public class LimsService {
        private static String url;
        private static String username;
        private static String password;
        //
        private static LimsService service = null;
        //私有构造函数
        private LimsService(){
            url = "http://serviceurl";
            username = "admin";
            password = "pswd";
        }
        public static LimsService getService(){
            if(service==null){
                service = new LimsService();
            }
            return service;
        }
        //
        public boolean uploadEquipmentData(String equipmentData){
            return true;
        }
    }

    调用示例:

    package lims.designpatterndemo.singletondemo;
    
    public class SingletonDemo {
    
        public static void main(String[] args) {
            boolean rst = LimsService.getService().uploadEquipmentData("");
            System.out.println(rst);
        }
    }
  • 相关阅读:
    laravel数据库配置
    mysql中utf8和utf8mb4区别
    laravel中artisan的用法
    laravel项目composer安装
    Linux 文件描述符
    Centos 7/8 SELinux
    Centos 7/8 高级磁盘管理技术
    Centos 7/8 搭建NFS Server
    Centos 7/8 日志管理
    Centos 7/8 Chronyd时间同步
  • 原文地址:https://www.cnblogs.com/mahongbiao/p/8619975.html
Copyright © 2011-2022 走看看