相关文章
聊聊Java的SPI机制
个人自建博客地址
什么是SPI呢?
SPI全称Service Provider Interface,翻译过来就是服务提供者接口。调用方提供接口声明,服务提供方对接口进行实现,提供服务的一种机制,服务提供方往往是第三方或者是外部扩展。
下面…
编程日记
2025/3/2 13:57:09
通信原理速成笔记(信息论及编码)
信息论基础
信息的定义与度量 信息是用来消除不确定性的内容。例如,在猜硬币正反的情境中,结果存在正反两种不确定性,而得知正确结果能消除这种不确定性,此结果即为信息。单个事件的信息量:对于离散信源中的事件xi&…
编程日记
2025/3/4 16:25:38
Kotlin协变与逆变区别
在Kotlin中,协变和逆变是泛型编程中的两个重要概念,它们允许我们在类型系统中更加灵活地处理类型关系。 1.协变:协变允许我们使用比原始类型更具体的类型。在kotlin中,通过在类型参数上加out关键字来表示协变,生产者,例…
编程日记
2025/3/2 13:24:16
深入理解Tomcat与Web应用部署:C/S与B/S架构下的实践指南
在当今的互联网时代,Web应用的开发与部署是软件开发领域的重要组成部分。无论是传统的C/S架构,还是现代广泛应用的B/S架构,了解它们的优缺点以及如何高效部署Web应用是每个开发者都需要掌握的技能。本文将深入探讨C/S与B/S架构的区别…
编程日记
2025/3/2 13:13:02
Express MVC
1. 安装依赖
npm init -y
npm install express
npm install --save-dev typescript ts-node ejs types/node types/express
tsc --init
2. 项目目录结构如下,没有的手动创建
/my-app/src/modelsuser.ts/viewsindex.ejsuserList.ejs/controllersuserController.ts…
编程日记
2025/3/2 13:12:00
Linux《基础开发工具(上)》
在之前的篇章当中我们已经了解了Linux当中基本的指令以及相关的知识,那么接下来在本篇当中就开始学基本的开发工具,在此我们一共要了解6大开发工具,在此将这些工具的学习分为上中下篇,在本篇当中我们首先要来学习的是yun以及vim,一…
编程日记
2025/3/2 13:01:46
Pytorch中的主要函数
目录 一、torch.manual_seed(seed)二、torch.cuda.manual_seed(seed)三、torch.rand(*size, outNone, dtypeNone, layouttorch.strided, deviceNone, requires_gradFalse)四、给大家写一个常用的自动选择电脑cuda 或者cpu 的小技巧五、torch.version.cuda;torch.bac…
编程日记
2025/3/2 12:50:12
kettle插件-自定义函数-数据脱敏
平常我们在使用kettle抽取数据的时候会涉及到敏感数据邀请脱敏或者进行掩码的需求,今天我们使用自定义函数插件来实现这些需求。
1、将自定义函数插件(kettle-func-plugin.zip)解压后放到kettle的plugins目录下面,然后重启服务。…
编程日记
2025/3/2 12:36:50