rime中州韵小狼毫 随机数 随机码 电脑信息 滤镜

在输入法中支持生成GUID,或者随机数,随机字符,获取自身电脑信息,这将是一个非常酷的功能。

先睹为快

本文所分享滤镜,主要用于生成一些动态的信息词条,效果如下👇:
20240109202113

GUID.lua

GUID.lua 脚本用于生成 GUID 字符串,GUID.lua 脚本如下👇:

--[[
Descripttion: 
version: 
Author: douyaoyuan
Date: 2023-06-01 08:48:23
LastEditors: douyaoyuan
LastEditTime: 2023-06-01 11:12:53
--]]
--GUID.lua
--这个模块主要用于处理一些utf8字符串相关的操作local M={}
local dbgFlg = false--设置 dbg 开关
local function setDbg(flg)dbgFlg = flgprint('GUID dbgFlg is '..tostring(dbgFlg))
end--返回一个 GUID 字符串
function guid()local seed={'e','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'}local tb={}for i=1,32 dotable.insert(tb,seed[math.random(1,16)])endlocal sid=table.concat(tb)return string.format('%s-%s-%s-%s-%s',string.sub(sid,1,8),string.sub(sid,9,12),string.sub(sid,13,16),string.sub(sid,17,20),string.sub(sid,21,32))
end--[[返回一个 guidInfo 结构,结构体如下:
guidInfo.guid:正常的GUID
guidInfo.noPunctuations:只包含字母和数字的GUID
guidInfo.withUnderline:分隔符是下划线的 guid
]]
function guidInfo()local id = {}local tmpId = guid()id.guid = tmpIdid.noPunctuations = string.gsub(tmpId,"-","")id.withUnderline = string.gsub(tmpId,"-","_")return id
end--这是测试函数
function test()local s=0local start_time=os.clock()while s<50000 dos=s+1print(s,guid())endprint('execute_time='..tostring(os.clock()-start_time))
end--Module
function M.init(...)M.guidInfo = guidInfoM.setDbg = setDbgM.test = test
endM.init()return M

sysInfo.lua

sysInfo.lua 脚本用于获取系统相关的信息,例如用户名,例如电脑名,例如环境变量中的一些路径信息等。sysInfo.lua 脚本如下👇:

-- 导入log模块记录日志
local logEnable, log = pcall(require, "runLog")local M={}
local dbgFlg = false--设置 dbg 开关
M.setDbg = function(flg)dbgFlg = flgprint('sysInfo dbgFlg is '..tostring(dbgFlg))
endM.homePath = function()local tmpVar = os.getenv("HOMEPATH") or os.getenv("HOME")if nil == tmpVar thentmpVar = '未知'endreturn tmpVar
endM.computerName = function()local tmpVar = os.getenv("COMPUTERNAME") or os.getenv("HOSTNAME")if nil == tmpVar thentmpVar = '未知'endreturn tmpVar
endM.userName = function()local tmpVar = os.getenv("USERNAME") or os.getenv("USER")if nil == tmpVar thentmpVar = '未知'endreturn tmpVar
endM.osName = function()local tmpVar = os.getenv("OS")if nil == tmpVar thentmpVar = 'UnixLike'endreturn tmpVar
endM.NUMBER_OF_PROCESSORS = function()local tmpVar = os.getenv("NUMBER_OF_PROCESSORS")if nil == tmpVar thentmpVar = '未知'endreturn tmpVar
endM.pwd = function()local tmpVar = os.getenv("PWD")if nil == tmpVar thentmpVar = '未知'endreturn tmpVar
endM.oldPwd = function()local tmpVar = os.getenv("OLDPWD")if nil == tmpVar thentmpVar = '未知'endreturn tmpVar
endM.PROCESSOR_IDENTIFIER = function()local tmpVar = os.getenv("PROCESSOR_IDENTIFIER")if nil == tmpVar thentmpVar = '未知'endreturn tmpVar
endM.PROGRAMDATA = function()local tmpVar = os.getenv("PROGRAMDATA")if nil == tmpVar thentmpVar = '未知'endreturn tmpVar
endM.PROGRAMFILES = function()local tmpVar = os.getenv("PROGRAMW6432")if nil == tmpVar thentmpVar = '未知'endreturn tmpVar
end
M.PROGRAMFILESx86 = function()local tmpVar = os.getenv("PROGRAMFILES(X86)")if nil == tmpVar thentmpVar = '未知'endreturn tmpVar
endM.APPDATA = function()local tmpVar = os.getenv("APPDATA(X86)")if nil == tmpVar thentmpVar = '未知'endreturn tmpVar
endM.WINDIR = function()local tmpVar = os.getenv("WINDIR")if nil == tmpVar thentmpVar = '未知'endreturn tmpVar
endM.COMMONPROGRAMFILES = function()local tmpVar = os.getenv("COMMONPROGRAMFILES")if nil == tmpVar thentmpVar = '未知'endreturn tmpVar
endM.COMMONPROGRAMFILESx86 = function()local tmpVar = os.getenv("COMMONPROGRAMFILES(x86)")if nil == tmpVar thentmpVar = '未知'endreturn tmpVar
endM.TEMP = function()local tmpVar = os.getenv("TEMP")if nil == tmpVar or '' == tmpVar thentmpVar = os.getenv("TMP")endif nil == tmpVar thentmpVar = '未知'endreturn tmpVar
endM.SYSTEMDRIVE = function()local tmpVar = os.getenv("SYSTEMDRIVE")if nil == tmpVar thentmpVar = '未知'endreturn tmpVar
endM.currentDir = function()local info = debug.getinfo(2) --debug.getinfo(2), 2: 返回调用 currentDir 的函数的信息--解析info.source所在的路径local path = info.sourcepath = string.sub(path, 2, -1) -- 去掉开头的"@"path = string.gsub(path,'\\','/') -- 路径格式由 c:\\Users\\san.zhang\\ 转换为 c:/Users/san.zhang/path = string.match(path, "^(.*)/") -- 捕获最后一个 "/" 之前的部分 就是我们最终要的目录部分return path
endM.writeLog = function(printPrefix)printPrefix = printPrefix or ''if logEnable thenlog.writeLog(printPrefix..'homePath: '..M.homePath())log.writeLog(printPrefix..'computerName: '..M.computerName())log.writeLog(printPrefix..'userName: '..M.userName())log.writeLog(printPrefix..'osName: '..M.osName())log.writeLog(printPrefix..'pwd: '..M.pwd())log.writeLog(printPrefix..'oldPwd: '..M.oldPwd())log.writeLog(printPrefix..'numberOfProcessors: '..M.NUMBER_OF_PROCESSORS())log.writeLog(printPrefix..'progressorIdentifier: '..M.PROCESSOR_IDENTIFIER())log.writeLog(printPrefix..'programData: '..M.PROGRAMDATA())log.writeLog(printPrefix..'programFiles: '..M.PROGRAMFILES())log.writeLog(printPrefix..'programFilesx86: '..M.PROGRAMFILESx86())log.writeLog(printPrefix..'appData: '..M.APPDATA())log.writeLog(printPrefix..'winDir: '..M.WINDIR())log.writeLog(printPrefix..'commonProgramFiles: '..M.COMMONPROGRAMFILES())log.writeLog(printPrefix..'commonProgramFilesx86: '..M.COMMONPROGRAMFILESx86())log.writeLog(printPrefix..'temp: '..M.TEMP())log.writeLog(printPrefix..'systemDrive: '..M.SYSTEMDRIVE())log.writeLog(printPrefix..'currentDir: '..M.currentDir())end
endreturn M

socket.lua

socket.lua 脚本主要用于加载同路径下的socket.core程序,为socket编程提供支持。socket.lua 脚本如下👇:

-- socket.lua
-- Copyright (C) 2023 yaoyuan.dou <douyaoyuan@126.com>
-- 这个模块仅用于导入 socket/core.dll 模块
-- 要求本 socket.lua 文件与 socket 文件夹位于同一路径下,core.dll 文件位于socket文件夹内
-- 使用时请注意 socket/core.dll 的版本 lua程序的版本是否一致
-- 使用时请注意 x86 与 x64 的区别-- 导入log模块记录日志
local logEnable, log = pcall(require, "runLog")-- 定义一个模块
local M = {}-- 获取本 socket.lua文件的路径
local current_path = string.sub(debug.getinfo(1).source, 2, string.len("/socket.lua") * -1)local pathSpace = "\\"
if string.find(current_path,'/') thenpathSpace = '/'
endcurrent_path = current_path:gsub(pathSpace..'$','')local x86x64 = 'x86'
-- 添加 cpath 路径,以使 lua 可以找到 current_path 路径下的 dll 库
if 'Lua 5.4' == _VERSION thenlocal cpath = "\\luaSocket\\x86\\lua5.4\\?.dll"  -- 引入 x86 lua54 版 socket.coreif 'x64' == x86x64 thencpath = "\\luaSocket\\x64\\lua5.4\\?.dll"  -- 引入 x64 lua54 版 socket.coreendcpath = string.gsub(cpath,'\\',pathSpace)  -- 调整路径分隔符package.cpath = package.cpath..';'..current_path..cpath
endlocal socketEnable, socket = pcall(require, "socket.core") -- 加载socket库M.socketEnable = socketEnable
M.socket = socketif not socketEnable thenif logEnable thenlog.writeLog('socketEnable is False')log.writeLog(socket)end
endreturn M

dynamicPhrase_Filter.lua

dynamicPhrase_Filter.lua 脚本将以上 GUID.luasysInfo.luasocket.lua 所提供的信息进行了整合,统一成 dynamicPhrase_Filter 滤镜方法。dynamicPhrase_Filter.lua 脚本如下👇:

--[[
Descripttion: 
version: 
Author: douyaoyuan
Date: 2023-06-01 08:48:23
LastEditors: douyaoyuan
LastEditTime: 2023-06-09 13:27:57
--]]
--dynamicPhrase_Filter.lua
--Copyright (C) 2023 yaoyuan.dou <douyaoyuan@126.com>
--本脚本主要用于提供一些与运行环境有关的词条信息--引入支持模块,处理日期和时间信息
local GUIDEnable, GUID = pcall(require, 'GUID')
local sysInfoEnable, sysInfo = pcall(require, 'sysInfo')
local socketEnable, socket = pcall(require, "socket")
local logEnable, log = pcall(require, "runLog")
local utf8StrEnable, utf8Str = pcall(require, 'utf8String')if socketEnable thensocketEnable = socket.socketEnablesocket = socket.socket
endlocal cands
local theCands
local candTxt_lower
local thisTxt
local thisCommentlocal function Filter(input, env)cands={}for cand in input:iter() do--抛出原选项if nil == cands[cand.text] thenyield(cand)cands[cand.text]=trueendtheCands={}if true thencandTxt_lower = cand.text:lower()if ({['id']=true,['标识']=true})[candTxt_lower] then--添加选项if GUIDEnable thenlocal guidInfo = GUID.guidInfo()table.insert(theCands,{guidInfo.noPunctuations,'💡GUID'})table.insert(theCands,{guidInfo.guid,'💡GUID'})table.insert(theCands,{guidInfo.withUnderline,'💡GUID'})endelseif ({['电脑']=true,['系统']=true,['本机']=true})[candTxt_lower] thenif sysInfoEnable then--添加选项if ({['电脑']=true,['本机']=true})[candTxt_lower] thenlocal computerName = sysInfo.computerName()if '未知' ~= computerName thentable.insert(theCands,{computerName,'💡电脑名'})endlocal cpu = sysInfo.PROCESSOR_IDENTIFIER()if '未知' ~= cpu thentable.insert(theCands,{cpu,'💡CPU'})endlocal coreCnt = sysInfo.NUMBER_OF_PROCESSORS()if '未知' ~= coreCnt thentable.insert(theCands,{coreCnt..'核','💡Core'})endendtable.insert(theCands,{sysInfo.osName(),'💡系统'})endelseif ({['ip']=true})[candTxt_lower] thenif socketEnable then--添加选项local ip = socket.dns.toip(socket.dns.gethostname())if ip thentable.insert(theCands,{ip,'💡ipv4'})endlocal addrinfo = socket.dns.getaddrinfo(socket.dns.gethostname(), nil, {family = "inet6"})if addrinfo thenfor _, info in ipairs(addrinfo) doif info.family == "inet6" thentable.insert(theCands,{info.addr,'💡ipv6'})endendendendelseif ({['用户']=true,['路径']=true})[candTxt_lower] thenif sysInfoEnable then--添加选项if ({['用户']=true})[candTxt_lower] thenlocal userName = sysInfo.userName()if '未知' ~= userName thentable.insert(theCands,{userName,'💡用户名'})endlocal homePath = sysInfo.homePath()if '未知' ~= homePath thentable.insert(theCands,{homePath,'💡用户路径'})endendif ({['路径']=true})[candTxt_lower] thenlocal WINDIR = sysInfo.WINDIR()if '未知' ~= sysInfo.WINDIR() thentable.insert(theCands,{WINDIR,'💡WINDIR'})endlocal homePath = sysInfo.homePath()if '未知' ~= homePath thentable.insert(theCands,{homePath,'💡用户路径'})endlocal pwd = sysInfo.pwd()if '未知' ~= pwd thentable.insert(theCands,{pwd,'💡pwd'})endlocal oldPwd = sysInfo.oldPwd()if '未知' ~= oldPwd thentable.insert(theCands,{oldPwd,'💡oldPwd'})endlocal PROGRAMDATA = sysInfo.PROGRAMDATA()if '未知' ~= PROGRAMDATA thentable.insert(theCands,{PROGRAMDATA,'💡PROGRAMDATA'})endlocal PROGRAMFILES = sysInfo.PROGRAMFILES()if '未知' ~= PROGRAMFILES thentable.insert(theCands,{PROGRAMFILES,'💡PROGRAMFILES'})endlocal PROGRAMFILESx86 = sysInfo.PROGRAMFILESx86()if '未知' ~= PROGRAMFILESx86 thentable.insert(theCands,{PROGRAMFILESx86,'💡PROGRAMFILES(x86)'})endlocal COMMONPROGRAMFILESx86 = sysInfo.COMMONPROGRAMFILESx86()if '未知' ~= COMMONPROGRAMFILESx86 thentable.insert(theCands,{COMMONPROGRAMFILESx86,'💡COMMONPROGRAMFILES(x86)'})endlocal TEMP = sysInfo.TEMP()if '未知' ~= TEMP thentable.insert(theCands,{TEMP,'💡TEMP'})endlocal APPDATA = sysInfo.APPDATA()if '未知' ~= APPDATA thentable.insert(theCands,{APPDATA,'💡APPDATA'})endendendelseif ({['随机']=true, ['密码']=true})[candTxt_lower] thenif '随机' == candTxt_lower then--添加选项,返回一个随机数table.insert(theCands,{math.random(),'💡0-1伪随机数'})endif utf8StrEnable thentable.insert(theCands, {utf8Str.newPwd(6), '💡6位随机密码'})table.insert(theCands, {utf8Str.newPwd(8), '💡8位随机密码'})table.insert(theCands, {utf8Str.newPwd(10, false), '💡10位随机密码'})table.insert(theCands, {utf8Str.newPwd(14), '💡14位随机密码'})table.insert(theCands, {utf8Str.newPwd(16), '💡16位随机密码'})table.insert(theCands, {utf8Str.newPwd(18), '💡18位随机密码'})endendend--抛出选项for idx = 1, #theCands dothisTxt = theCands[idx][1]thisComment = theCands[idx][2]if nil ~= thisTxt and '' ~= thisTxt thenif nil == cands[thisTxt] thenyield(Candidate("word", cand.start, cand._end, thisTxt, thisComment))cands[thisTxt] = trueendendendend
endreturn Filter

💣注意:
👆以上所述 dynamicPhrase_Filter.luaGUID.luasysInfo.luasocket.lua 四个脚本文档,应该位于 用户文件夹 下的 lua 文件夹内。如下👇:
20240109203357

rime.lua

rime.lua 脚本中,我们增加以下配置/代码👇:

help_translator = require("help")
inputShow_translator = require("inputShow")
inputShow_Filter = require("inputShow_Filter")
Upper_Filter = require("Upper_Filter")
dic_4w_Filter = require("dic_4w_Filter")
phraseReplace_Filter = require("phraseReplace_Filter")
pinyinAdding_Filter = require("pinyinAdding_Filter")
dateTime_Filter = require("dateTime_filter")
dynamicPhrase_Filter = require("dynamicPhrase_Filter")

注意最后一行中我们增加了 dynamicPhrase_Filter 滤镜。

wubi_pinyin.custom.yaml

此文以 五笔・拼音 输入方案为例,展示如何配置使用 dynamicPhrase_Filter 滤镜。

五笔・拼音 输入方案的方案文档 wubi_pinyin.schema.yaml 的补丁文档 wubi_pinyin.custom.yaml 中,我们增加以下滤镜配置👇:

# encoding:utf-8
patch:- lua_filter@dynamicPhrase_Filter				# 动态候选项,用于动态获取与运行环境有关的信息

👆以上配置并没有完全展示 wubi_pinyin.custom.yaml 中的所有配置项,此处仅展示了与 dynamicPhrase_Filter 滤镜有关的一项配置。

文档获取

👆上述所有的lua脚本与yaml配置文档,你也可以从 rime中州韵小狼毫须鼠管 动态信息滤镜 配置.zip 下载取用。

如果你可以访问gitHub,你也可以在 dyyRime 中找到完全版本的配置包。

小结

本文分享了一种在rime中州韵小狼毫须鼠管输入法中配置动态信息的滤镜,滤镜支持生成GUID字符串,支持生成密码密码字符串,支持获取系统信息(例如用户名,系统名等),支持获取常用路径,支持获取本机ip地址等。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/609642.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何正确地理解应用架构并开发

许多同学或多或少都经历过这样的流程&#xff1a; 新同学刚来公司&#xff0c;学习了解团队的一些工程代码&#xff0c;并了解其中的代码风格团队新接手了一些其他团队的项目&#xff0c;需要了解工程结构以及概念如何定义工程项目的工程结构&#xff0c;包目录结构并达成团队共…

抖音矩阵云混剪系统源码 短视频矩阵营销系统V2.2.1(免授权版)

抖音矩阵云混剪系统源码 短视频矩阵营销系统V2.2.1&#xff08;免授权版&#xff09; 中网智达矩阵营销系统多平台多账号一站式管理&#xff0c;一键发布作品。智能标题&#xff0c;关键词优化&#xff0c;排名查询&#xff0c;混剪生成原创视频&#xff0c;账号分组&#xff…

Redis主从复制、哨兵及集群

目录 简介 主从复制 哨兵 集群 1.Redis 主从复制 主从复制的作用 主从工作原理 主从复制搭建 安装redis 修改redis配置文件Master节点操作 修改 Redis 配置文件slave节点操作 验证主从效果 2.Redis 哨兵模式 哨兵模式的作用 哨兵结构组成部分 故障转移机制 主…

API(Math类,System类,Runtime类,Object类,Objects类,BigInteger类,BigDecimal类)

文章目录 课程目标1 Math类1.1 概述1.2 常见方法1.3 算法小题(质数)1.4 算法小题(自幂数)1.5 课后练习 2 System类2.1 概述2.2 常见方法 3 Runtime3.1 概述3.2 常见方法3.3 恶搞好基友 4 Object类4.1 概述4.2 常见方法 5 Objects类5.1 概述5.2 常见方法 6 BigInteger类6.1 引入…

vue-vben-admin 与.net core 结合实例 【自学与教学 小白教程】---第4节---部门管理

ue-vben-admin 与.net core 结合实例 这里计划使用.net core 作为后端 。目标&#xff1a;打造好看 易用 开箱即用 的netcore一体化框架。Vue Vben Admin For NetCore 取命 hcrain-vvadmin 我不是前端人员 但有时开发还是要写一些界面。 之前使用layui是时候 狠心升级下了。 …

【教3妹学编程-算法题】移除后集合的最多元素数

3妹&#xff1a;好冷啊&#xff0c; 冻得瑟瑟发抖啦 2哥 : 这才哪跟哪&#xff0c;上海这几天温度算是高的啦。你看看哈尔滨&#xff0c;那才是冰城。 3妹&#xff1a;据说沈阳千名“搓澡大姨”支援哈尔滨&#xff1f;哈哈哈哈 2哥 : 就像今年的淄博烧烤&#xff0c;可能有炒作…

LabVIEW在微生物检测中的应用

随着对食品安全关注的增加&#xff0c;食品检测的准确性变得越来越重要。其中&#xff0c;微生物计数作为食品合格的关键指标&#xff0c;对其检测技术的准确性和实时性要求极高。传统的微生物检测面临着菌落识别困难、设备实时性差和自动化程度不高等问题&#xff0c;尤其在疫…

GB28181视频汇聚平台EasyCVR级联后,部分通道视频无法播放是什么原因?

GB28181协议智慧安防平台EasyCVR是基于各种IP流媒体协议传输的视频汇聚和融合管理平台。视频流媒体服务器EasyCVR采用了开放式的网络结构&#xff0c;支持高清视频的接入和传输、分发&#xff0c;平台提供实时远程视频监控、视频录像、录像回放与存储、告警、语音对讲、云台控制…

Hystrix

Hystrix简介 Hystrix是由Netflix开源的一个延迟和容错库&#xff0c;用于隔离访问远程系统、服务或者第三方库&#xff0c;防止级联失败&#xff0c;从而提升系统的可用性与容错性。 断路器本身是一种开关装置,当某个服务单元发生故障后,通过断路器的故障监控(类似熔断保险丝…

图解Kubernetes的服务(Service)

pod 准备&#xff1a; 不要直接使用和管理Pods&#xff1a; 当使用ReplicaSet水平扩展scale时&#xff0c;Pods可能被terminated当使用Deployment时&#xff0c;去更新Docker Image Version&#xff0c;旧Pods会被terminated&#xff0c;然后创建新Pods 0 啥是服务&#xf…

[工具探索]-PS处理图片文字

以下涉及到用PS进行图片中文字的删减、替换、修改等操作&#xff0c;比较琐碎&#xff0c;不过用替换方式可以做到无印记 1、将图片中中局部删除 &#xff08;1&#xff09;导入图片信息&#xff08;2&#xff09;首先双击图层解锁&#xff0c;然后按住alt键拖动图层&#xf…

Open CASCADE学习|创建拓朴

目录 1、创建点gp_Pnt 2、创建向量gp_Vec 3、创建边TopoDS_Edge 4、线网络TopoDS_Wire 5、面TopoDS_Face 6、体TopoDS_Shape OpenCascade中的拓朴实体如下图所示&#xff0c;其中Compound可以包含很多Solid&#xff1b;Solid由Shell包围而成&#xff1b;Shell由相连的Fac…

LeetCode 36 有效的数独

题目描述 有效的数独 请你判断一个 9 x 9 的数独是否有效。只需要 根据以下规则 &#xff0c;验证已经填入的数字是否有效即可。 数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。&#xff08;请参考…

MySQL连续案例续集

01&#xff09;查询学过「张三」老师授课的同学的信息 SELECT s.*, c.cname, t.tname, sc.score FROM t_mysql_teacher t, t_mysql_course c, t_mysql_student s, t_mysql_score sc WHERE t.tid c.tid AND c.cid sc.cid AND sc.sid s.sid AND t.tname ‘张三’ 02&#x…

uniapp微信小程序投票系统实战 (SpringBoot2+vue3.2+element plus ) -创建图文投票实现

锋哥原创的uniapp微信小程序投票系统实战&#xff1a; uniapp微信小程序投票系统实战课程 (SpringBoot2vue3.2element plus ) ( 火爆连载更新中... )_哔哩哔哩_bilibiliuniapp微信小程序投票系统实战课程 (SpringBoot2vue3.2element plus ) ( 火爆连载更新中... )共计21条视频…

【SQL】对表中的记录通过时间维度分组,统计出每组的记录条数

场景&#xff1a;一般用作数据统计&#xff0c;比如统计一个淘宝用户在年、月、日的维度上的订单数。 业务&#xff1a;一个集合&#xff0c;以时间维度来进行分组求和。 准备一张订单表order&#xff0c;有一些常规属性&#xff0c;比如创建时间&#xff0c;订单号。 DDL语句如…

【2023】java常用HTTP客户端对比以及使用(HttpClient/OkHttp/WebClient)

&#x1f4bb;目录 1、介绍2、使用2.1、添加配置2.1.1、依赖2.1.2、工具类2.1.3、实体2.1.4、Controller接口 2.2、Apache HttpClient使用2.3 、OkHttp使用2.4、WebClient使用 1、介绍 现在java使用的http客户端主要包括以下几种 而这些中使用得最频繁的主要是&#xff1a; A…

Deno 1.22 发布

目录 更新默认的类型检查模式 移除Deno.emit()Deno.formatDiagnostics()和Deno.applySourceMap() API 默认启用Deno命名空间 --no-config标识 Navigator.userAgent 更新 Deno.resolveDns() API 引入新的Response.json()静态方法 在 LSP 默认启用 Linting 对测试运行程…

资源调度(2)-----pod的亲和性和反亲和性

集群调度: schedule的调度算法。 预算策略&#xff1a;过滤出合适的节点 优先策略&#xff1a; 选择部署的节点 nodeName:硬匹配&#xff0c;不走调度策略。node01. nodeSelector&#xff1a;根据节点的标签选择&#xff0c;会走调度算法。 只要是走调度算法&#xff0c;在不满…

[VSCode] VSCode 常用快捷键

文章目录 VSCode 源代码编辑器VSCode 常用快捷键分类汇总01 编辑02 导航03 调试04 其他05 重构06 测试07 扩展08 选择09 搜索10 书签11 多光标12 代码片段13 其他 VSCode 源代码编辑器 官网&#xff1a;https://code.visualstudio.com/ 下载地址&#xff1a;https://code.visua…