当前位置: 首页 > news >正文

Tauri(2.5.1)+Leptos(0.7.8)开发桌面应用--程序启动界面

前期使用Tauri(2.5.1)+Leptos(0.7.8)写了一个自用桌面小程序,详见:使用Tauri 2.3.1+Leptos 0.7.8开发桌面小程序汇总_tauri 小程序-CSDN博客。

在此基础上,尝试给程序添加启动界面,效果如下图所示。

 1. 添加启动画面设置

在src-tauri/tauri.conf.json文件中, 添加splashscreen窗口。具体内容如下:

"app": {"withGlobalTauri": true,"windows": [{"fullscreen": false,"resizable": false,"width": 800,"height": 600,"label":"splashscreen","alwaysOnTop": true,"visible": false,"url":"../public/splashscreen.html","center": true,"decorations": false},{"title": "酸度系数","fullscreen": false,"resizable": true,"width": 1100,"height": 720,"label":"main","alwaysOnTop": false,"visible": false,"center": true,"decorations": true}],"security": {"csp": null}},

其中,splashscreen窗口的参数"visible"本应为true,但是如此设置后,在启动界面出现前,会首先出现一个空白窗口,一闪而过,影响美观,网上说是因为WebView2的bug,所以采取了另外一个思路,将plashscreen窗口的参数"visible"设为false,即启动时不可见,程序启动后再显示splashscreen窗口,然后等待3秒,关闭启动界面,打开主窗口。

参数"url":"../public/splashscreen.html"定义了启动界面的html文件,前面所述的“打开splashscreen”窗口,等待3秒后“关闭splashscreen窗口”,“打开main主窗口”都是通过该文件中的js脚本调用后台tauri命令实现的。

另外,splashscreen.html中的js脚本调用后台tuari命令使用的是window.__TAURI__.core.invoke,它需要在tauri.conf.json中设置"withGlobalTauri"参数为true。

2. 启动界面定义

新建/pubic/splashscreen.html文件,内容如下:

<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>启动中...</title><link rel="stylesheet" href="splashscreen.css">
</head>
<body><div class="splash-container"><div class="splash-content"><img src="doughnutS.svg" alt="Logo" class="splash-logo"><div class="splash-loader"></div><p class="splash-text">正在加载应用...</p></div></div><script type="module" src="js/splashscreen.js"></script>
</body>
</html>

/public/splashscreen.css文件定义了窗口格式及特性,包括图标缩放闪烁,旋转等待动画。具体文件内容如下:

.splash-container {position: fixed;top: 0;left: 0;width: 100%;height: 100%;display: flex;justify-content: center;align-items: center;background-color: rgba(255, 255, 255, 0.9);
}.splash-content {display: flex;flex-direction: column;align-items: center;gap: 20px;
}.splash-logo {width: 300px;height: 300px;animation: pulse 2s infinite;
}.splash-text {font-family: Arial, sans-serif;font-size: 18px;color: #333;
}.splash-loader {width: 60px;height: 60px;border: 5px solid #f3f3f3;border-top: 5px solid #3498db;border-radius: 50%;animation: spin 1s linear infinite;
}@keyframes spin {0% { transform: rotate(0deg); }100% { transform: rotate(360deg); }
}@keyframes pulse {0% { transform: scale(1); }50% { transform: scale(1.1); }100% { transform: scale(1); }
}

/public/js/splashscreen.js文件定义了启动界面的后续操作,主要通过window.__TAURI__.core.invoke调用后台Tauri命令实现,具体内容如下:

  // When using the Tauri API npm package://import { invoke } from '@tauri-apps/api/core';// When using the Tauri global script (if not using the npm package)// Be sure to set `app.withGlobalTauri` in `tauri.conf.json` to trueconst invoke = window.__TAURI__.core.invoke;await invoke('show_splashscreen_window');console.log('成功显示主窗口');setTimeout(async () => {try {// 使用Tauri 2.5官方推荐API调用方式console.log('正在检查Tauri API...');try {await invoke('close_splashscreen');console.log('成功关闭启动窗口');} catch (err) {console.error('命令调用失败:', err);//window.location.href = '/';}} catch (error) {console.error('启动页切换失败:', error);// 失败时直接跳转到主页面//window.location.href = '/';}}, 3000);
});

其中:

show_splashscreen_window后台命令负责显示启动界面,前面在 tauri.conf.json中设置了plashscreen窗口的参数"visible"设为false,此处首先将其显示出来;

setTimeout(async () => {}, 3000)表示3秒后执行{}内的操作;

close_splashscreen后台命令负责关闭启动界面,然后显示主窗口。

3. Tauri后台命令

在/src-tauri/src/lib.rs中,定义show_splashscreen_window和close_splashscreen命令,具体代码如下:

mod tray;       //导入tray.rs模块
mod mymenu;     //导入mynemu.rs模块
use mymenu::{create_menu, handle_menu_event};#[tauri::command]
async fn show_splashscreen_window(app: tauri::AppHandle) {if let Some(splashscreen) = app.get_webview_window("splashscreen") {splashscreen.show().unwrap();}
}
#[tauri::command]
async fn close_splashscreen(app: tauri::AppHandle) {if let Some(splashscreen) = app.get_webview_window("splashscreen") {splashscreen.close().unwrap();}// 获取主窗口let main_window = app.get_webview_window("main").unwrap();// 延迟创建菜单并附加到窗口let menu = create_menu(&app).unwrap();main_window.set_menu(menu).unwrap();main_window.on_menu_event(move |window, event| handle_menu_event(window, event));// 显示主窗口main_window.show().unwrap();
}#[cfg_attr(mobile, tauri::mobile_entry_point)]
pub fn run() {tauri::Builder::default().plugin(tauri_plugin_opener::init()).invoke_handler(tauri::generate_handler![show_splashscreen_window,close_splashscreen]).setup(|app| {// 确保主窗口保持隐藏直到启动画面关闭if let Some(main_window) = app.get_webview_window("main") {let _ = main_window.hide();}#[cfg(all(desktop))]{let handle = app.handle();tray::create_tray(handle)?;         //设置app系统托盘}tauri::async_runtime::block_on(async move {let db = setup_db(&app).await;         //setup_db(&app:&mut App)返回读写的数据库对象app.manage(DbState { db });                   //通过app.manage(DbState{db})把数据库对象传递给state:tauri::State<'_, DbState>});Ok(())}).run(tauri::generate_context!()).expect("运行Tauri程序的时候出错!");
}

在启动主窗口时,将之前定义的菜单及菜单事件响应附加到窗口,窗口自定义菜单详见:Tauri2+Leptos开发桌面应用--新建窗口、自定义菜单和多页面切换_tauri leptos-CSDN博客。

之前自定义的菜单及事件响应是在run()函数中完成的: 

#[cfg_attr(mobile, tauri::mobile_entry_point)]
pub fn run() {tauri::Builder::default().plugin(tauri_plugin_opener::init()).invoke_handler(tauri::generate_handler![greet]).menu(|app|{create_menu(app)}).setup(|app| {let main_window = app.get_webview_window("main").unwrap();main_window.on_menu_event(move |window, event| handle_menu_event(window, event));#[cfg(all(desktop))]{let handle = app.handle();tray::create_tray(handle)?;         //设置app系统托盘}tauri::async_runtime::block_on(async move {let db = setup_db(&app).await;         //setup_db(&app:&mut App)返回读写的数据库对象app.manage(DbState { db });                   //通过app.manage(DbState{db})把数据库对象传递给state:tauri::State<'_, DbState>});Ok(())}).run(tauri::generate_context!()).expect("运行Tauri程序的时候出错!");
}

4. 效果展示

 至此,为Tauri2桌面小程序添加启动界面基本完成,具体程序效果如下。

Tauri2+Leptos开发桌面应用--添加程序启动画面

相关文章:

Tauri(2.5.1)+Leptos(0.7.8)开发桌面应用--程序启动界面

前期使用Tauri(2.5.1)Leptos(0.7.8)写了一个自用桌面小程序&#xff0c;详见&#xff1a;使用Tauri 2.3.1Leptos 0.7.8开发桌面小程序汇总_tauri 小程序-CSDN博客。 在此基础上&#xff0c;尝试给程序添加启动界面&#xff0c;效果如下图所示。 1. 添加启动画面设置 在src-ta…...

Gmsh划分网格|四点矩形

先看下面这段官方自带脚本 /*********************************************************************** Gmsh tutorial 1** Variables, elementary entities (points, curves, surfaces), physical* entities (points, curves, surfaces)********************************…...

I/O多路复用(select/poll/epoll)

通过一个进程来维护多个Socket&#xff0c;也就是I/O多路复用&#xff0c;是一种常见的并发编程技术&#xff0c;它允许单个线程或进程同时监视多个输入/输出&#xff08;I/O&#xff09;流&#xff08;例如网络连接、文件描述符&#xff09;。当任何一个I/O流准备好进行读写操…...

一键生成达梦、Oracle、MySQL 数据库 ER 图!解锁高效数据库设计!

从事企业软件项目开发的同学们一定对 ER 图很熟悉&#xff0c;可以帮助用户快速厘清数据库结构&#xff0c;方便后续维护和优化。但是在日常工作中&#xff0c;面对复杂的数据结构&#xff0c;整理表设计文档对于每一位DBA来说都很头大&#xff0c;需要将设计细节转化为条理清晰…...

学习黑客 windows 设置与控制面板详解

Windows 设置与控制面板详解&#xff1a;双剑合璧的系统配置工具 ⚙️&#x1f527; 学习目标&#xff1a;理解Windows设置和控制面板的异同、掌握系统配置的安全最佳实践 1. 引言&#xff1a;双界面的系统配置世界 &#x1f310; 在Windows操作系统中&#xff0c;有两个强大的…...

pytorch模型画质增强简单实现

使用数据增强技术可以增加数据集中图像的多样性&#xff0c;从而提高模型的性能和泛化能力&#xff0c;主要的图像增强技术包括。 亮度&#xff0c;对比度调节 在开始图像大小的调整之前我们需要导入数据&#xff08;图像以眼底图像为例&#xff09;。 from PIL import Image f…...

C++中的std::allocator

C中的std::allocator 文章目录 C中的std::allocator1.std::allocator1.1C中的placement new 和operator new1.2一个custom allocator的实现1.3使用std::allocator_traits实现allocator 1.std::allocator C中的std::allocator默默工作在CSTL中的所有容器的内存分配上&#xff0…...

Linux文件编程——read函数与lseek函数

一、read函数 在 Linux 文件编程中&#xff0c;read 函数是一个系统调用&#xff0c;用于从文件描述符&#xff08;File Descriptor&#xff09;指向的文件或设备中读取数据到缓冲区。它是 Unix/Linux 系统编程中实现底层 I/O 操作的核心函数之一。以下是 read 函数的详细使用…...

STM32 变量存储

一、存储区划分与变量分类 STM32的存储空间分为Flash&#xff08;非易失性&#xff09;和RAM&#xff08;易失性&#xff09;两大区域&#xff1a; ​Flash存储器 ​代码段&#xff08;Code&#xff09;​&#xff1a;存储程序指令和常量&#xff08;如字符串、const变量&…...

解锁性能密码:Linux 环境下 Oracle 大页配置全攻略​

在 Oracle 数据库运行过程中&#xff0c;内存管理是影响其性能的关键因素之一。大页内存&#xff08;Large Pages&#xff09;作为一种优化内存使用的技术&#xff0c;能够显著提升 Oracle 数据库的运行效率。本文将深入介绍大页内存的相关概念&#xff0c;并详细阐述 Oracle 在…...

HashMap中哈希值与数组坐标的关联

目录 1、哈希值的生成与处理 2、计算桶的索引 3、哈希值总结 4、哈希冲突解决方案 4.1. 拉链法&#xff08;Separate Chaining&#xff09; 4.2. 开放寻址法&#xff08;Open Addressing&#xff09; 1、线性探测&#xff08;Linear Probing&#xff09; 2、二次探测&a…...

GBK与UTF-8编码问题(1)

1. 问题现象 我们在编译.py的python代码时&#xff0c;有时会遇到如下图这种问题。提示说“SyntaxError: (unicode error) ‘utf-8’ codec can’t decode byte 0xc4 in position 0: invalid continuation byte”&#xff0c;代码中有中文字符&#xff0c;这似乎和文件的编码方…...

大模型的实践应用41-天气预测与分析决策系统:Qwen3(32B)+langchain框架+MCP(大模型上下文协议)+RAG+传统算法

大家好,我是微学AI,今天给大家介绍一下大模型的实践应用41-Qwen3(32B)+langchain框架+MCP(大模型上下文协议)+RAG+传统算法研发天气预测与分析决策系统。本项目构建一个基于大模型Qwen3(32B)、LangChain框架、MCP协议、RAG技术以及传统算法的天气预测与分析决策系统。该系统通…...

单片机学习Day08--相邻流水灯

一&#xff0c;题目&#xff1a;同时点亮相邻的两个灯&#xff0c;并实现流水设计。 亮的是0&#xff1b; 最前面是LED8. #include <REGX51.H> typedef unsigned int u16; typedef unsigned char u8; #define led P2 void delay_10us(u16 t) { while(t--); } void mai…...

邮件营销应对高退信率的策略

一、邮件列表管理 1. 使用专业工具验证 借助如 Geeksend 邮箱验证等专业工具&#xff0c;全面清洗邮件列表&#xff0c;剔除无效、过期或格式错误的邮箱地址&#xff0c;确保邮件精准送达有效收件人&#xff0c;从而降低退信率。 2. 定期清理无效地址 将定期清理邮件列表纳入…...

无线定位之 三 SX1302 网关源码 thread_gps 线程详解

前言 笔者计划通过无线定位系列文章、系统的描述 TDOA 无线定位和混合定位相关技术知识点, 并以实践来验证此定位系统精度。 笔者从实践出发、本篇直接走读无线定位系统关键节点、网关 SX1302 源码框架,并在源码走读过程 中、着重分析与无线定位相关的PPS时间的来龙去脉、并在…...

Kubernetes控制平面组件:Kubelet详解(一):API接口层介绍

云原生学习路线导航页&#xff08;持续更新中&#xff09; kubernetes学习系列快捷链接 Kubernetes架构原则和对象设计&#xff08;一&#xff09;Kubernetes架构原则和对象设计&#xff08;二&#xff09;Kubernetes架构原则和对象设计&#xff08;三&#xff09;Kubernetes控…...

Java项目层级介绍 java 层级 层次

java 层级 层次 实体层 控制器层 数据连接层 Service : 业务处理类 Repository &#xff1a;数据库访问类 Java项目层级介绍 https://blog.csdn.net/m0_67574906/article/details/145811846 在Java项目中&#xff0c;层级结构&#xff08;Layered Architecture&#xf…...

【操作系统】零拷贝技术

1. DMA技术 DMA技术也就是直接内存访问技术。在进行I/O设备和内存的数据传输的时候&#xff0c;数据传输的工作全部交给DMA控制器&#xff0c;而不是CPU负责。 2. 传统的文件传输 传统的文件传输的代码如下&#xff1a; read(file, tmp_buf, len); write(socket, tmp_buf,…...

从零构建高性能桌面应用:GPUI Component全解析与实战指南

简介 高性能UI组件库正在重塑桌面应用开发的格局,而GPUI Component作为新兴的Rust桌面UI组件库,凭借其卓越的跨平台支持能力、GPU加速渲染和企业级功能特性,正成为构建现代化高性能桌面应用的首选。本文将从零开始,全面解析GPUI Component的核心特性、安装配置流程,并通过…...

java 中 DTO 和 VO 的核心区别

DTO 和 VO 的核心区别 特性DTO&#xff08;数据传输对象&#xff09;VO&#xff08;视图对象&#xff09;设计目的服务层与外部系统&#xff08;如前端、其他服务&#xff09;之间的数据传输为前端展示层定制数据&#xff0c;通常与 UI 强绑定数据内容可能包含业务逻辑需要的字…...

bazel迁移cmake要点及具体迁移工程示例(apollo radar)

文章目录 bazel迁移cmake要点及具体迁移工程示例迁移要点指南依赖库管理proto编译目标库及二进制文件生成项目导出runtime_data软件打包 conti_rardar完整迁移过程common_msgcommoncanbusconti_radar编译 bazel迁移cmake要点及具体迁移工程示例 迁移要点指南 迁移主要的内容包…...

跨时钟域(CDC,clock domain crossing)信号处理

参考视频&#xff1a; 数字IC&#xff0c;FPGA秋招【单bit信号的CDC跨时钟域处理手撕代码合集】_哔哩哔哩_bilibili 一、亚稳态 原因是&#xff1a;建立时间和保持时间没有保持住。然后在下图的红框里面&#xff0c;产生亚稳态。因为电路反馈机制&#xff0c;最后大概率会恢复…...

Java高频面试之并发编程-16

hello啊&#xff0c;各位观众姥爷们&#xff01;&#xff01;&#xff01;本baby今天又来报道了&#xff01;哈哈哈哈哈嗝&#x1f436; 面试官&#xff1a;volatile 实现原理是什么&#xff1f; volatile 关键字的实现原理 volatile 是 Java 中用于解决多线程环境下变量可见性…...

MyBatis 一对多关联映射在Spring Boot中的XML配置

在Spring Boot中使用MyBatis实现一对多关系时&#xff0c;可以通过XML映射文件来配置。下面我将详细介绍几种实现方式。 基本概念 一对多关系指的是一个实体对象包含多个子对象集合的情况&#xff0c;例如&#xff1a; 一个部门有多个员工一个订单有多个订单项一个博客有多个…...

Spring Boot异步任务失效的8大原因及解决方案

Spring Boot异步任务失效的8大原因及解决方案 摘要:在使用Spring Boot的@Async实现异步任务时,你是否遇到过异步不生效的问题?本文总结了8种常见的异步失效场景,并提供对应的解决方案,帮助你彻底解决异步任务失效的难题。 一、异步失效的常见场景 1. 未启用异步支持 ❌ …...

嵌入式Linux I2C驱动开发详解

文章目录 一、I2C协议的核心原理 1. I2C协议的“双线制”通信 2. I2C的地址寻址机制 二、Linux I2C驱动框架的分层设计 1. I2C核心 2. I2C适配器 3. I2C设备驱动 三、I2C驱动开发测试 一、I2C协议的核心原理 1. I2C协议的“双线制”通信 SDA&#xff08;数据线&#xff09; 和…...

基于 Spring Boot 瑞吉外卖系统开发(十二)

基于 Spring Boot 瑞吉外卖系统开发&#xff08;十二&#xff09; 菜品删除 单击“批量删除”和“删除”时&#xff0c;会携带需要删除的菜品的id以delete请求方式向“/dish”发送请求。 URLhttp://127.0.0.1:8080/dish调用方法DELETE参数ids DishController添加删除方法 …...

基于 51 单片机的 PWM 电机调速系统实现

51 单片机通过定时器来实现 PWM(脉冲宽度调制)控制,这是一种通过调整方波信号的占空比来控制输出功率的技术。下面详细介绍如何使用 51 单片机实现 PWM 控制并应用于电机调速。 1. PWM 控制原理 PWM 信号是一个周期性的方波,通过调整高电平时间(Ton)与周期(T)的比例(…...

wordpress主题分享

发布于&#xff1a;Eucalyptus-Blog 一、引言 大家对WordPress免费主题都非常感兴趣&#xff0c;但是一般收费的WordPress主题功能才多&#xff0c;其实有很多开源的免费WordPress主题都很不错&#xff0c;对于很多新建站的小伙伴&#xff0c;这些主题完全足够用了。这里就分享…...

【合新通信】无人机天线拉远RFOF(射频光纤传输)解决方案

无人机天线拉远RFOF方案通过光纤替代传统射频电缆&#xff0c;实现无人机与地面控制站之间的高保真、低损耗信号传输&#xff0c;尤其适用于高频段&#xff08;如毫米波&#xff09;、远距离或复杂电磁环境下的无人机作业场景。 核心应用场景 军事侦察与电子战 隐蔽部署&…...

视觉-语言-动作模型:概念、进展、应用与挑战(下)

25年5月来自 Cornell 大学、香港科大和希腊 U Peloponnese 的论文“Vision-Language-Action Models: Concepts, Progress, Applications and Challenges”。 视觉-语言-动作 (VLA) 模型标志着人工智能的变革性进步&#xff0c;旨在将感知、自然语言理解和具体动作统一在一个计…...

git如何将本地 dev 分支与远程 dev 分支同步

要让本地 dev 分支与远程 dev 分支完全同步&#xff08;丢弃本地多余的提交记录&#xff09;&#xff0c;可以按照以下步骤操作&#xff1a; 1. ​​获取远程最新状态​ git fetch origin dev # 拉取远程 dev 分支的最新提交&#xff0c;但不会修改本地代码 IDEA中点击fetc…...

自动化测试与功能测试详解

&#x1f345; 点击文末小卡片&#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 什么是自动化测试? 自动化测试是指利用软件测试工具自动实现全部或部分测试&#xff0c;它是软件测试的一个重要组成 部分&#xff0c;能完成许多手工测试无…...

python3数据类型

常见python3数据类型 Number&#xff08;数字&#xff09;String&#xff08;字符串&#xff09;bool&#xff08;布尔类型&#xff09;List&#xff08;列表&#xff09;Tuple&#xff08;元组&#xff09;Set&#xff08;集合&#xff09;Dictionary&#xff08;字典&#x…...

《Python星球日记》 第66天:序列建模与语言模型

名人说&#xff1a;路漫漫其修远兮&#xff0c;吾将上下而求索。—— 屈原《离骚》 创作者&#xff1a;Code_流苏(CSDN)&#xff08;一个喜欢古诗词和编程的Coder&#x1f60a;&#xff09; 目录 一、传统语言模型1. n-gram 模型基础2. n-gram 模型的局限性 二、RNN 在语言建模…...

CRM和SCRM有什么区别

CRM&#xff08;客户关系管理&#xff09;与SCRM&#xff08;社会化客户关系管理&#xff09;的主要区别在于沟通方式、客户互动、数据来源和客户参与度。CRM更侧重企业对客户信息的管理与内部流程优化&#xff0c;而SCRM强调客户主动参与&#xff0c;通过社交媒体等平台加强互…...

破解 Qt QProcess 在 Release 模式下的“卡死”之谜

在使用 Qt 的 QProcess 以调用外部 ffmpeg/ffprobe 进行音视频处理时&#xff0c;常见的工作流程是&#xff1a; gatherParams&#xff1a;通过 ffprobe 同步获取媒体文件的参数&#xff08;分辨率、采样率、声道数、码率等&#xff09;。 reencode&#xff1a;逐个文件调用 f…...

重学安卓14/15自由窗口freeform企业实战bug-学员作业

背景&#xff1a; 在aosp14版本及以后版本上&#xff0c;安卓的自由窗口部分的工具栏部分都有了较大的更新 工具栏这部分已经移到了SystemUI进程的WMShell进行统一的管理。 但是近来有学员朋友在对自由窗口进行相关的拖拽操作时候&#xff0c;有遇到这个工具栏相关的一个bug&…...

【layout组件 与 路由镶嵌】vue3 后台管理系统

前言 很多同学在第一次搭建后台管理系统时&#xff0c;会遇到一个问题&#xff0c;layout组件该放哪里&#xff1f;如何使用&#xff1f;路由又该如何设计&#xff1f; 这边会讲一下我的思考过程和最后的结果&#xff0c;大家可以参考一下&#xff0c;希望大家看完能有所收获。…...

【PXIE301-211】基于PXIE总线的16路并行LVDS数据采集、1路光纤数据收发处理平台

板卡概述 PXIE301-211是一款基于PXIE总线架构的16路并行LVDS数据采集、1路光纤收发处理平台&#xff0c;该板卡采用Xilinx的高性能Kintex 7系列FPGA XC7K325T作为实时处理器&#xff0c;实现各个接口之间的互联。板载1组64位的DDR3 SDRAM用作数据缓存。板卡具有1个FMC&#xf…...

linux-进程信号的产生

Linux中的进程信号&#xff08;signal&#xff09;是一种用于进程间通信或向进程传递异步事件通知的机制。信号是一种软中断&#xff0c;用于通知进程某个事件的发生&#xff0c;如错误、终止请求、计时器到期等。 1. 信号的基本概念 - 信号&#xff08;Signal&#xff09;&am…...

基于 Nexus 在 Dockerfile 配置 yum, conda, pip 仓库的方法和参考

在 Nexus 配置代理仓库的方法&#xff0c;可参考 pypi 的配置博客&#xff1a;https://hellogitlab.com/CI/docker/create_your_nexus_2 更多代理格式&#xff0c;参考官方文档&#xff0c;如 pypi&#xff1a;https://help.sonatype.com/en/pypi-repositories.html 配置 yum…...

精品可编辑PPT | 全面风险管理信息系统项目建设风控一体化标准方案

这份文档是一份全面风险管理信息系统项目建设风控一体化标准方案&#xff0c;涵盖了业务架构、功能方案、系统技术架构设计、项目实施及服务等多个方面的详细内容。方案旨在通过信息化手段提升企业全面风险管理工作水平&#xff0c;促进风险管理落地和内部控制规范化&#xff0…...

Redis集群安装

Redis集群安装 1.集群介绍 首先要了解&#xff0c;Redis的高可用机制。 2个master节点&#xff0c;挂掉1个&#xff0c;1不过半&#xff0c;则集群宕机&#xff0c;不可用&#xff0c;容错率为0&#xff1b;3个master节点&#xff0c;挂掉1个&#xff0c;2>1&#xff0c;…...

下载知网外文文献全文的方法

知网和一些外文数据库机构是合作关系&#xff0c;因知网没有订购外文文献全文&#xff0c;所以可以搜到外文文献但不能下载全文&#xff0c;基本提供的都是外文文献摘要。本文就实例演示一下获取知网外文文献全文的方法步骤。 例如下面这篇知网外文文献&#xff0c;该文献被收…...

解决IDEA无法运行git的问题

之前git一直没有问题&#xff0c;今天打开就提示我安装git&#xff0c;自然用git去提交新项目也会遇到问题。 我出现问题的原因是&#xff1a;git路径缺失 文件->设置->git 发现git的路径为空&#xff0c;按照实际位置填写即可...

基于Qt6 + MuPDF在 Arm IMX6ULL运行的PDF浏览器——MuPDF Adapter文档

项目地址&#xff1a;总项目Charliechen114514/CCIMXDesktop: This is a Qt Written Desktop with base GUI Utilities 本子项目地址&#xff1a;CCIMXDesktop/extern_app/pdfReader at main Charliechen114514/CCIMXDesktop 前言 这个部分说的是Mupdf_adaper下的文档的工…...

Ubuntu20.04 搭建Kubernetes 1.28版本集群

环境依赖 以下操作,无特殊说明,所有节点都需要执行 安装 ssh 服务安装 openssh-server复制代码 sudo apt-get install openssh-server修改配置文件复制代码 vim /etc/ssh/sshd_config找到配置项 复制代码 LoginGraceTime 120 PermitRootLogin prohibit-password StrictModes…...

操作系统和数据库账号密码的安全管理、使用,安当SMS凭据管理系统

引言&#xff1a;密码管理困局下的破局之道 在数字化转型的深水区&#xff0c;企业正面临前所未有的密码管理挑战。某跨国制造企业因数据库密码泄露导致核心工艺参数外泄&#xff0c;某三甲医院因运维账号滥用引发百万级医疗数据泄露事件&#xff0c;这些真实案例揭示着传统密…...