状态20230426模式16

使用 Sa-Token 实现不同的登录模式:单地登录、多地登录、同端互斥登录

### 一、需求分析 如果你经常使用腾讯QQ,就会发现它的登录有如下特点:它可以手机电脑同时在线,但是不能在两个手机上同时登录一个账号。 同端互斥登录,指的就是:像腾讯QQ一样,在同一类型设备上只允许单地点登录,在不同类型设备上允许同时在线。 动态演示图: ![同端互斥登录](https://oss ......
Sa-Token 模式 Token Sa

基于Redis的消息发布和订阅(广播模式)

> 最近在优化一个redis的大key问题, 原先的同事写法是将所有的配置都放在一个key里面, value是一个map. 但是随着配置越来越多, 这个map也变得很大, 已经影响redis的性能.遂决定将map里面的每个配置单独出来一个key, 当有配置变动的时候, 通过redis的消息队列通知到 ......
消息 模式 Redis

wpf在设计器模式利用模拟数据展现控件

使用Visual Studio 开发WPF应用程序时,控件显示需要的数据如果来路比较“苦难”,比如来自数据库,JSON文件,复杂计算等,这时候,如果想看到控件带有数据的展示效果,需要启动调试,这很麻烦。 我们可以在XAML中使用designtime语法给控件赋予模拟数据[MSDN教程](https: ......
控件 模式 数据 wpf

重温设计模式 --- 单例模式

## 引言 **单例模式**是一种创建型设计模式,它的主要目的是确保某个类在应用程序中只有一个实例,并且这个实例能够被全局访问。在许多情况下,单例模式是非常有用的,比如说当你需要创建一个全局的配置类或者日志类时,单例模式可以让你轻松地实现这些功能。 在实现单例模式时,有两种常见的方法,“懒汉式”和“ ......
模式 设计模式

学习时出现概念模糊和理解不充分的情况的可能的16条原因和解决方案

学习时出现概念模糊和理解不充分的情况是很常见的,可能有以下原因导致这种情况: 1. 缺乏基础知识:在学习新概念之前,确保你已经掌握了相关的基础知识。如果你对某个主题了解不多,可能需要先进行一些预习或查找相关的背景资料,以便更好地理解新的概念。 解决方案:回顾基础知识,填补概念空白。你可以使用教科书、 ......
概念 解决方案 原因 情况 方案

0003_二十三种设计模式

## 设计模式 ### 二十三种设计模式 根据经典的《设计模式:可复用面向对象软件的基础》(Gang of Four)一书,共提出了23种常见的设计模式。这些设计模式分为三个分类: 1. 创建型模式(Creational Patterns):这些模式关注对象的创建机制,帮助解决对象的实例化过程。 - ......
设计模式 模式 0003

Android 自定义view中根据状态修改drawable图片

原文地址:[Android 自定义view中根据状态修改drawable图片 - Stars-One的杂货小窝](https://stars-one.site/2023/07/09/android-view-state-drawable) 本文涉及知识点: - Android里的selector图片 ......
drawable 状态 Android 图片 view

JS 中单例模式的具体实现细节和实践

通用的创建单例模式的方法: 1 创建实例对象的职责和管理单例的职责分别放置于两个方法中。 2 两个方法可以互相独立而互不影响。 3 惰性加载单例模式,等到用到的时候才加载。 1 let createSingle = function (fn) { 2 let result; 3 return fun ......
细节 模式 JS

16. Q_ __example_位置如何变化_

16. Q: `#example`位置如何变化: ``` Hello ``` ``` #example {margin-left: -5px;} ``` A: 向左移动5px。 17. `#i-am-useless` 会被浏览器加载吗? ``` ``` ``` #i-am-useless {back ......
位置 example 16

【设计模式】策略模式与简单工厂结合

# 策略模式 > 大话设计模式 ## 什么是策略模式(Strategy)? 它定义了算法家族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化,不会影响到使用算法的客户。 策略模式是一种定义一系列算法的方法,从概念上来看,所有这些算法完成的都是相同的工作,只是实现不同,它可以以相同的方式调用 ......
模式 设计模式 工厂 策略

重温设计模式 --- 建造者模式

## 引言 **建造者模式**是一种创建型设计模式,它可以将一个复杂对象的构建过程和表示分离,使得相同的构建过程可以创建不同的表示,以及不同的构建过程可以创建相同的表示 在实际的开发中,我们有时需要创建一些复杂的对象,例如包含多个组件和属性的对象,这时候如果直接在代码中创建对象,代码的可读性和可维护 ......
模式 设计模式

重温设计模式 --- 观察者模式

## 引言 **观察者模式**是一种行为型设计模式,它允许对象之间建立一种一对多的关系,使得当一个对象状态改变时,所有依赖它的对象都能够自动得到通知并更新自己的状态。该模式可以帮助我们实现松耦合的系统,以便更好地应对变化和扩展。 在观察者模式中,有两个角色:**观察者**和**被观察者**。被观察者 ......
模式 观察者 设计模式

重温设计模式 --- 工厂方法模式

## 引言 **工厂方法模式**是一种创建型设计模式,它定义了一个用于创建对象的接口,但是让子类决定将哪一个类实例化。换句话说,工厂方法模式让一个类的实例化延迟到其子类。 工厂方法模式有以下几个主要角色: - 抽象工厂(AbstractFactory):声明用于创建抽象产品的操作的接口。 - 工厂实 ......
模式 设计模式 工厂 方法

重温设计模式 --- 抽象工厂模式

## 引言 **抽象工厂模式**一种创建型设计模式,它提供了一种方式来封装一组具有相同主题的工厂,而不必指定它们具体的类。这样,客户端代码就可以使用抽象工厂来创建一组相关的对象,而不必关心实际创建的具体类。 抽象工厂模式有以下几个主要角色: - 抽象工厂(AbstractFactory):声明用于创 ......
模式 设计模式 工厂

Windows下MySQL 5.7.20的installer 模式安装

一、安装Windows环境 wrar_5.50.0.0_scp.exe vcredist2013_x86.exe VC2015_x64.exe NDP452-KB2901907-x86-x64-AllOS-ENU.exe Microsoft.NET4.0.zip 二、installer模式安装 My ......
installer Windows 模式 MySQL 20

命令模式和模板模式以及构造者模式在工程中的应用

在开发springboot项目的开发过程中我们总会使用到mvc模式,在controller层写接口,service中写业务,dao层进行数据持久化。这种模式总会service的实现层写很多代码,这样会使得seviceimpl类中有很多业务代码,以及注入很多的bean,后期维护起来会相当麻烦。今天采用 ......
模式 命令 模板 工程

Hadoop 伪分布模式配置

etc/hadoop/core-site.xml <configuration> <!-- 指定HDFS中namenode地址--> <property> <name>fs.defaultFS</name> <value>hdfs://hadoop01:9000</value> </property ......
模式 Hadoop

代理设计模式

## 代理设计模式的作用 代理模式(Proxy Pattern)是指建立某一个对象的代理对象,并且由代理对象控制对原对象的引用。可以在目标对象的基础上,增强额外的功能操作,即扩展目标对象的功能. - 需求 项目经理:有一天早上项目经理突然对小张说,小张啊现在给你分配一个需求,之前小王开发的那个接口的 ......
设计模式 模式

winload.efi是Windows操作系统的一个重要文件,它负责启动系统和加载操作系统的关键组件。0xc0000426错误状态表示UEFI(统一扩展固件接口)引导过程中有一个验证失败

winload.efi是Windows操作系统中负责启动加载操作系统的文件之一。它位于计算机的EFI系统分区(或称为ESP,EFI System Partition)中,通常位于磁盘上的一个特定分区。 当计算机启动时,UEFI固件会在EFI系统分区中查找并执行winload.efi文件。winloa ......
系统 重要文件 固件 组件 接口

介绍Vue router的history模式以及如何配置history模式

# 引言 Vue router给我们提供了两种路由模式,分别是hash模式和history模式。其中默认是使用hash模式,即URL中带有一个#符号,但是处于业务或个人喜爱的差别,Vue router也提供了history模式。但是由于Vue是单页SPA应用,所以每个路由并没有对应的html文件。 ......
history 模式 router Vue

面向对象、设计原则、设计模式、编程规范、重构五者的关系

最经典的设计模式书籍是GoF的《设计模式》,他的中文全称叫《设计模式:可复用面向对象软件的基础》,为什么他在标题中会特意提到“面向对象”呢? 面向对象 针对面向对象,我们需要掌握7点。 面向对象的四大特性:封装、抽象、继承、多态; 面向对象和面向过程编程的区别与联系; 面向对象分析、设计、编程; 接 ......
设计模式 对象 原则 模式

C语言单例模式

#### 单例模式的定义 ​ 单例模式的需求是保证在代码的整个运行期间,某种数据类型只有一个唯一的实例子。并且提供一个全局的访问接口。 我们可以从两个角度来理解单例模式 - 数据类型有且仅可以创建一个实例,编程人员不可以的随意的定义的此类型的实例。我们必须限制这种数据结构的创建。 - 访问接口是全局 ......
语言 模式

PostgreSQL 16.2安装

1、postgresql安装-软件包安装 1.1下载安装包,官网下载地址:https://www.postgresql.org/download/。 如果服务器有网络,可以选择yum安装。 在服务器没有网络的情况下,需要先下载rpm包,我们选择这种方式。 现在最新版本是PostgreSQL 16.2 ......
PostgreSQL 16.2 16

windows上时间项目时间正常,Ubuntu16.04上时间错误

项目本次测试时间正常,放到服务器上时间差8个小时 1.查看Ubuntu系统时间,发现时间设置错误 date -R 该命令会把我们系统的时间还有时区显示出来,我们是属于东八区,如下图: 如果不是 +0800 这个时区的话,就说明我们的时区不对。如果时区正确,系统时间还是有问题,那么我们需要同步网络时间 ......
时间 错误 windows 项目 Ubuntu

设计模式之类之间的关系和六大原则

1 类之间的关系 类与类之间的关系大概有6种,要看懂UML图,首先需要了解这几种关系。 1.1 继承关系 继承指的是一个类(称为子类,子接口)继承另外的一个类(成为父类,父接口)的功能,并可以增加它自己的新功能的能力。在UML类图设计中,继承用一条带空心三角箭头的实线表示,从子类指向父类,或者子接口 ......
设计模式 原则 之间 模式

Docker安装Nacos并以单例模式运行

Nacos单例模式运行使用嵌入式数据库即可,这里不依赖于mysql。拉取指定版本Nacos镜像: docker pull nacos/nacos-server:2.0.3 查看镜像列表: docker images 以单例模式启动: docker run -d --name nacos -p 884 ......
模式 Docker Nacos

C++ 设计模式之外观模式

设计模式之外观模式 外观模式主要是为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得该子系统更加容易使用。说白了就是一堆系统或类实现了些复杂的功能,然后为了方便使用,又新建了一个类把这些类实现的功能封装起来了。该模式不难理解。其UML图如下: 在Facade类提供了一堆调 ......
模式 设计模式 外观

C++ 设计模式之建造者模式

设计模式之建造者模式 建造者模式,将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 其UML图如下: 简单理解就是Builder中定义了创建Product各个部分的接口。ConcreteBuilder中具体实现了创建Product中的各个部分的接口,就是具体的建造者。Dir ......
模式 设计模式

C++ 设计模式之抽象工厂模式

设计模式之抽象工厂模式 抽象工厂模式,提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。其UML图如下: 结合上图我们来理解一下抽象工厂模式的定义。提供一个创建一些列相关或相互依赖对象的接口,而无需指定它们具体的类。在上图中一系列相互依赖或相关的对象可以理解为ProductA,Pr ......
模式 设计模式 工厂

C++设计模式之观察者模式

设计模式之观察者模式 观察者模式定义了一种一对多的依赖关系,让多个观察者同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使它们能够自动更新自己。其UML图如下: 在ConcretSubject内部有一个Observer的列表,当Subject的状态发生改变时,会通知列表内 ......
模式 观察者 设计模式