vue-plugin-hiprint (vue2
页面效果
<template><div><div class="d-flex flex-column mt5"><div class="d-flex flex-row " style="margin-bottom: 10px;justify-content: center;"><!-- 纸张大小 A3、A4 等 --><div class="paper"><template v-for="(value, type) in paperTypes"><button :class="curPaperType === type ? 'api' : 'info'" @click="setPaper(type, value)" :key="type">{{ type }}</button></template><!-- 自定义纸张 --><button :class="'other' == curPaperType ? 'api' : 'info'" class="auto" @click="showPaperPop">自定义纸张</button><div class="popover"><div class="popover-content d-flex" v-show="paperPopVisible"><div class="mt10" style="font-size: 16px; font-weight: bold">宽X高(mm):</div><div class="d-flex mt10"><input class="input" :value="paperWidth" type="number" placeholder="宽(mm)" /><span class="ml10 mr10">x</span><input class="input" :value="paperHeight" type="number" placeholder="高(mm)" /></div><button class="primary circle-10" style="margin-top: 6px" @click="setPaperOther">确定</button></div></div></div><button class="api circle-10 ml10" @click.stop="rotatePaper"><i class="iconfont sv-rotate" />旋转纸张(宽高互换)</button><button class="api circle-10 ml10" @click.stop="clearPaper"><i class="iconfont sv-clear" />清空纸张</button><button class="secondary circle-10 ml10" @click.stop="print"><i class="iconfont sv-printer" />浏览器打印</button><button class="warning circle-10 ml10" @click.stop="print2">直接打印(需要连接客户端)<i class="iconfont sv-printer" /></button><!-- 缩放 --><div class="d-flex flex-row align-center ml10" style="line-height: 25px;"><el-button icon="el-icon-zoom-out" circle @click="changeScale(false)" size="mini"></el-button><div style="margin: 0 4px; width: 40px">{{ (scaleValue * 100).toFixed(0) }}%</div><el-button icon="el-icon-zoom-in" circle @click="changeScale(true)" size="mini"></el-button></div></div><div class="d-flex flex-row " :style="'height: '+BodyHeight"><div class="flex-2 left d-flex flex-column"><div class="title">默认样式</div><!-- provider1 的容器; 式 --><div id="provider-container1" class="container rect-printElement-types"></div><div class="title">自定义样式</div><!-- provider2 的容器; --><div id="provider-container2" class="container rect-printElement-types"></div><div class=""></div></div><div class="flex-5 center"><!-- 设计器的 容器 --><div id="hiprint-printTemplate"></div></div><div class="flex-2 right"><!-- 元素参数的 容器 --><div id="PrintElementOptionSetting"></div></div></div><print-preview ref="preView" /></div></div>
</template><script></script><script setup>
import { hiprint } from "vue-plugin-hiprint"
import { provider1 } from "./provider1"
import { provider2 } from "./provider2"
import printPreview from './preview'
import template from "./template"
import { getHiprintPrintTemplate } from "../../../../utils/template-helper"
import { newHiprintPrintTemplate } from '../../../../utils/template-helper'let hiprintTemplate
export default {components: { printPreview },data () {return {// BodyHeight: document.documentElement.scrollHeight - 160 + "px",BodyHeight: document.documentElement.scrollHeight - 140 + "px",options: {config: {tid: "providerModule1.config",title: "参数示例",type: "text",options: {testData: "单据表头",height: 30,fontSize: 16,},},},curPaper: {type: "A4",width: 210,height: 296.6,},paperTypes: {'A3': {width: 420,height: 296.6},'A4': {width: 210,height: 296.6},'A5': {width: 210,height: 147.6},'B3': {width: 500,height: 352.6},'B4': {width: 250,height: 352.6},'B5': {width: 250,height: 175.6}},// 自定义纸张paperPopVisible: false,paperWidth: "220",paperHeight: "80",// 缩放scaleValue: 1,scaleMax: 5,scaleMin: 0.5,// 导入导出jsonjsonIn: '',jsonOut: '',}},computed: {curPaperType () {let type = 'other'let types = this.paperTypesfor (const key in types) {let item = types[key]let { width, height } = this.curPaperif (item.width === width && item.height === height) {type = key}}return type}},methods: {changeScale (bol) {if (bol) {this.scaleValue += 0.1if (this.scaleValue > this.scaleMax) this.scaleValue = 5} else {this.scaleValue -= 0.1if (this.scaleValue < this.scaleMin) this.scaleValue = 0.5}if (hiprintTemplate) {hiprintTemplate.zoom(this.scaleValue)}},tp () {return getHiprintPrintTemplate()},showPaperPop () {this.paperPopVisible = true},setPaper (type, value) {try {if (Object.keys(this.paperTypes).includes(type)) {this.curPaper = { type: type, width: value.width, height: value.height }hiprintTemplate.setPaper(value.width, value.height)} else {this.curPaper = { type: "other", width: value.width, height: value.height }hiprintTemplate.setPaper(value.width, value.height)}} catch (error) {alert(`操作失败: ${error}`)}},setPaperOther () {let value = {}value.width = this.paperWidthvalue.height = this.paperHeightthis.paperPopVisible = falsethis.setPaper("other", value)},buildLeftElement () {$("#provider-container1").empty()hiprint.PrintElementTypeManager.build($("#provider-container1"), "providerModule1")$("#provider-container2").empty()hiprint.PrintElementTypeManager.build($("#provider-container2"), "providerModule2")},buildDesigner () {$("#hiprint-printTemplate").empty()$("#hiprint-printTemplate").empty()hiprintTemplate = new hiprint.PrintTemplate({template: template,settingContainer: "#PrintElementOptionSetting",})hiprintTemplate.design("#hiprint-printTemplate")},print () {console.log("dsdddddddddddddd")hiprint.refreshPrinterList((list) => {console.log('refreshPrinterList')console.log(list)})hiprint.getAddress('ip', (data) => {console.log('ip')console.log(data)})hiprint.getAddress('ipv6', (data) => {console.log('ipv6')console.log(data)})hiprint.getAddress('mac', (data) => {console.log('mac')console.log(data)})hiprint.getAddress('dns', (data) => {console.log('dns')console.log(data)})hiprint.getAddress('all', (data) => {console.log('all')console.log(data)})// 各个平台不一样, 用法见: https://www.npmjs.com/package/addresshiprint.getAddress('interface', (data) => {console.log('interface')console.log(data)}, 'IPv4', 'eth1')this.$refs.preView.show(hiprintTemplate, this.printData)},print2 () {if (hiprint.hiwebSocket.opened) {hiprintTemplate.print2(this.printData)} else {alert("请先连接客户端(刷新网页), 然后再点击「直接打印」")}},rotatePaper () {hiprintTemplate.rotatePaper()},clearPaper () {hiprintTemplate.clear()},exportJson () {let json = hiprintTemplate.getJson()console.log(json)alert("导出成功! 请查看控制台输出")},exportJsonTid () {let json = hiprintTemplate.getJsonTid()console.log(json)alert("导出成功! 请查看控制台输出")}},mounted () {this.buildDesigner()hiprint.init({providers: [provider1(this.options), provider2(this.options)],})this.buildLeftElement()}
}
</script><style >.primary {background: purple;color: #fff;
}
.info {color: #000;background: none;
}
.info:hover {color: purple;border-color: purple;}
.secondary {background: #1976d2;color: #fff;
}
.warning {background-color: #e57171;color: #fff;
}.circle,
.circle-4 {border: 1px solid #cdcdcd;border-radius: 4px !important;
}
.circle-10 {border: 1px solid #cdcdcd;border-radius: 4px !important;
}
/* 重写默认的一个样式 */
.rect-printElement-types .hiprint-printElement-type > li > ul > li > a {color: #6a98d3 !important;height:auto
}/* 自定义 provider 构建样式 */
.custom-style-types .hiprint-printElement-type {display: block;
}
.custom-style-types .hiprint-printElement-type {padding: 0 0 0 0;list-style: none;
}
.custom-style-types .hiprint-printElement-type > li > .title {display: block;padding: 4px 0px;color: rgb(0, 58, 230);clear: both;
}
.custom-style-types .hiprint-printElement-type > li > ul {padding: 0 0 0 0;display: block;list-style: none;
}
.custom-style-types .hiprint-printElement-type > li > ul > li {display: block;width: 50%;float: left;max-width: 100px;
}
.custom-style-types .hiprint-printElement-type > li > ul > li > a {padding: 12px 6px;color: #1296db;text-decoration: none;background: #fff;border: 1px solid #ddd;margin-right: 5px;width: 95%;max-width: 100px;display: inline-block;text-align: center;margin-bottom: 7px;box-sizing: border-box;border: 1px solid rgba(0, 0, 0, 0.2);border-radius: 4px;box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.15);
}
.hiprint-printPanel .hiprint-printPaper{background-color: #fff;
}
</style><style scoped>
::v-deep .el-dialog__header {padding: 0px;
}
::v-deep .el-dialog__body{padding: 0px !important
}
/* api按钮 */
.api {background: #00acc1;color: #fff;
}
.auto {width: auto !important;
}
/* 纸张 */
.paper {margin-right: 10px;
}
.paper button:not(class*='auto') {width: 60px !important;
}
/* 多个 button 间距 */
.paper button {margin-left: -1px;border: 1px solid #ffffff;line-height: 22px;background-color: #328db1;border-radius: 4px;}
/* .paper button:first-child:last-child {border-radius: 4px;border: 1px solid #ffffff;line-height: 22px;background-color: #328db1;border-radius: 4px;
} */
/* 两边的 btn 圆角 */
/* .paper button:first-child:not(:last-child) {border-top-left-radius: 4px;border-bottom-left-radius: 4px;
}
.paper button:last-child:not(:first-child) {border-top-right-radius: 4px;border-bottom-right-radius: 4px;
} */
.popover {position: absolute;margin-top: 10px;z-index: 10;
}
.popover .popover-content {background: white;border-radius: 4px;padding: 10px 14px;box-shadow: 2px 2px 2px 4px rgb(128 0 128 / 20%);
}
.popover .input {height: 24px;padding: 2px 4px;
}
.popover .input:hover {border-radius: 4px;
}/* 区域 */
.left {background: white;border-radius: 4px;border: 1px solid #d9d9d9;box-shadow: 2px 2px 2px 0px rgb(128 0 128 / 20%);overflow: auto;
}
.left .container {height: 50%;overflow: auto;padding: 0 7%;
}
.left .container[id*='provider-container2'] {margin-bottom: 10px;
}
.center {background-color: #f3f3f3;margin: 0 10px;/* background: white; */border-radius: 4px;border: 1px solid #d9d9d9;padding: 20px;box-shadow: 2px 2px 2px 0px rgb(128 0 128 / 20%);overflow: auto;
}.right {background: white;border-radius: 4px;border: 1px solid #d9d9d9;padding: 10px 0;box-shadow: 2px 2px 2px 0px rgb(128 0 128 / 20%);overflow: auto;
}
/* 左侧拖拽元素样式 */
.title {font-size: 16px;font-weight: 500;margin: 4px 0 4px 10px;background: #ededed;text-align: center;
}
.item {display: flex;flex-direction: column;align-items: center;background: white;padding: 4px 10px;margin: 10px 8px 4px 8px;width: 38%;min-height: 60px;border-radius: 4px;box-shadow: 2px 2px 2px 2px rgba(171, 171, 171, 0.2);
}
.item .iconfont {font-size: 1.5rem;
}
.item span {font-size: 14px;
}
</style>
参考链接:GitHub - CcSimple/vue-plugin-hiprint-start: vue-plugin-hiprint 使用示例
相关文章:
vue-plugin-hiprint (vue2
页面效果 <template><div><div class"d-flex flex-column mt5"><div class"d-flex flex-row " style"margin-bottom: 10px;justify-content: center;"><!-- 纸张大小 A3、A4 等 --><div class"paper&quo…...
网站地址栏怎么变成HTTPS开头?
在当今的数字世界中,网络安全已成为不可或缺的一部分。对于网站管理员和所有者来说,确保访问者数据的安全和隐私至关重要。HTTPS是一种加密的通信协议,通过在客户端和服务器之间建立安全连接来保护数据传输。将网站从HTTP升级到HTTPS不仅提升…...
手机用流量怎样设置代理ip?
互联网各领域资料分享专区(不定期更新): Sheet...
Web渗透实战--XSS 常用语句以及绕过思路
Web渗透实战–XSS 常用语句以及绕过思路 0x01:干货 - XSS 测试常用标签语句 0x0101: 标签 <!-- 点击链接触发 - JavaScript 伪协议 --><a hrefjavascript:console.log(1)>XSS1</a> <!-- 字符编码绕过 - JavaScript 伪协议 -->&…...
哈希表-两个数的交集
代码随想录-刷题笔记 349. 两个数组的交集 - 力扣(LeetCode) 内容: 集合的使用 , 重复的数剔除掉,剩下的即为交集,最后加入数组即可。 class Solution {public int[] intersection(int[] nums1, int[] nums2) {Set<Integer…...
“数字+实体“双引擎发力树莓集团打造翠屏区首个智慧产业孵化标杆
2025 年 2 月 13 日,宜宾市翠屏区招商引资项目集中签约活动圆满举行。树莓集团产业合作总监童曦鸣代表企业出席并签约,将在翠屏区打造数字经济示范项目。 此次签约,树莓集团将以 “数字 实体” 双引擎发力。在数字产业化方面,凭…...
PostgreSQL 数据库压力测试指南
一、为什么需要压力测试? 数据库需要进行压力测试的原因主要包括以下几个方面: 性能评估:通过压力测试,可以了解数据库在高负载情况下的性能表现,包括响应时间、吞吐量和资源利用率等。这有助于确定系统的性能瓶颈。 …...
npm : 无法加载文件 C:\nvm\v20.11.1\npm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅
在vscode中运行前端项目时npm run dev 报错:npm : 无法加载文件 C:\nvm\v20.11.1\npm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID135170 中的 about_Execution_Policies。 所在位置 行:1…...
-bash:/usr/bin/rm: Argument list too long 解决办法
问题概述 小文件日志太多导致无法使用rm命令,因为命令行参数列表的长度超过了系统允许的最大值。 需要删除/tmp目录下的所有文件,文件数量比较多。 ls -lt /tmp | wc -l 5682452 解决方法如下: 使用find -exec 遍历,然后执行删…...
【deepseek 部署中的常见问题及解决方案--亲测有效】
deepseek 部署中的常见问题及解决方案 一、环境与安装相关问题二、配置相关问题三、运行与性能问题四、其他常见问题 一、环境与安装相关问题 Python版本不兼容 问题描述:在部署DeepSeek时,系统提示Python版本不兼容。解决方法:DeepSeek推荐…...
【React】react-redux+redux-toolkit实现状态管理
安装 npm install reduxjs/toolkit react-reduxRedux Toolkit 是官方推荐编写Redux的逻辑方式,用于简化书写方式React-redux 用来链接Redux和React组件之间的中间件 使用 定义数据 创建要管理的数据模块 store/module/counter.ts import { createSlice, Payloa…...
LabVIEW用户界面(UI)和用户体验(UX)设计
作为一名 LabVIEW 开发者,满足功能需求、保障使用便捷与灵活只是基础要求。在如今这个用户体验至上的时代,为 LabVIEW 应用程序设计直观且具有美学感的界面,同样是不容忽视的关键任务。一个优秀的界面设计,不仅能提升用户对程序的…...
期权帮 | 场外个股期权可以做吗,风险高吗?
锦鲤三三每日分享期权知识,帮助期权新手及时有效地掌握即市趋势与新资讯! 场外个股期权可以做吗,风险高吗? 场外个股期权,就是在正式的交易所之外进行交易的个股期权。 注:这里的“场外”指的是这类交易不在像沪深…...
【Viper】配置格式与支持的数据源与go案例
Viper 是一个用于 Go 应用程序的配置管理库,支持多种配置格式和数据源。 安装依赖 go get github.com/spf13/viper go get github.com/spf13/viper/remote go get go.etcd.io/etcd/client/v3"github.com/spf13/viper/remote"要写在etcd客户端import里 1…...
【工具变量】地级市数字基础设施水平数据(2003-2024年)
一、数据来源:数据涵盖了2003-2024年间地级市新型数字基础设施的发展水平测量值。数据的核心来自地方政府工作报告中提及的相关词汇,并通过对这些报告的分词和频次统计,得出每个城市在该领域的数字基础设施发展水平。 数据覆盖全国285个地级市…...
Ae:常见的光照控件和材质控件
在 After Effects中,几种模拟效果都有类似的光照控件和材质控件,比如,焦散、卡片动画、碎片等。 光照控件和材质控件允许用户模拟不同光源、阴影和高光效果,控制表面反射特性,从而实现真实的光照和反射模拟。适用于材质…...
POI 的 Excel 读写操作教程
POI 的 Excel 读写操作教程 一、POI 简介 Apache POI 是一款在 Java 开发中广受欢迎的开源库,主要用于处理各种 Microsoft Office 文件格式,Excel 文件便是其中之一。凭借其功能强大的 API,POI 不仅支持对 Excel 文件的读取、写入和修改&am…...
java处理pgsql的text[]类型数据问题
背景 公司要求使用磐维数据库,于是去了解了这个是基于PostgreSQL构建的,在使用时有场景一条图片数据中可以投放到不同的页面,由于简化设计就放在数组中,于是使用了text[]类型存储;表结构 #这是一个简化版表结构&…...
数据结构:Map Set(一)
目录 一、搜索树 1、概念 2、查找 3、插入 4、删除 二、搜索 1、概念及场景 2、模型 (1)纯key模型 (2)Key-Value模型 三、Map的使用 1、什么是Map? 2、Map的常用方法 (1)V put(K …...
Ansible 自动化 Linux 运维:解放你的双手,让运维变得简单
Ansible 自动化 Linux 运维:解放你的双手,让运维变得简单 在现代 IT 运维中,随着系统规模的不断扩展,如何高效地管理和维护大量的服务器成为了一项巨大挑战。传统的手动操作不仅费时费力,还容易出错。而 Ansible 作为一款开源的自动化运维工具,凭借其易用性和强大的功能…...
不需要移植和配置xinetd 等相类似执行文件,tftp-hpa服务器交叉移植使用说明
tftp-hpa-5.2.tar.gz :下载链接 https://download.csdn.net/download/lyeffort/90361414 tar -xvf tftp-hpa-5.2.tar.gz -C /root/tftpd/ # ./autogen.sh # export PATH/root/linux-arm-tools/mips-linux-gclibc/bin:$PATH # mkdir /root/tftpd/install # ./configure --h…...
利用用个人PC搭建私有大模型(低成本、易实施的私有大模型部署方案,兼顾英语 5G协议学习与实践需求)
背景 个人有2台电脑, 第一台: laptop cpu 12th Gen Intel Core™ i7-1260P 2.10 GHz, GPU intel iris Xe graphics, 第二台: MS-7D22,Intel Core™ i5-10400F CPU 2.90GHz, GeForce GT 730。想…...
SAP 借助 Databricks 推出Business Data Cloud
SAP与Databricks合作推出了SAP Business Data Cloud,这是一项突破性的解决方案,旨在统一和整合企业内所有SAP及第三方数据,为企业提供可信的数据基础,从而推动更具影响力的决策并促进可靠的AI应用。这一合作标志着企业数据管理的新…...
地基Spring中bean生命周期和设计模式
面试问题: 在Java面试中,当被提问到Spring中Bean的生命周期和设计模式时,你可以按照以下方式回答,以体现自己的专业知识和实际项目经验: Spring中Bean的生命周期 Spring中Bean的生命周期是一个复杂但有序的过程&#…...
CanMV的刷新比Openmv强
今天使用CanMV k230的板子,发现CanMV的刷新比Openmv强,速度快,不用再次拍照刷新,写一次就能在ide屏幕上同时显示。 参考一下CanMV K230拍照保存Demo - CanMV(K210 / K230) - 01科技 | 01Studio Takephot(…...
Xilinx kintex-7系列 FPGA支持PCIe 3.0 吗?
Xilinx kintex-7系列资源如下图 Xilinx各系列的GT资源类型和性能 PCIe Gen1/2/3的传输速率对比 K7上面使用的高速收发器GTX最高速率为12.5GT/s, PCIe Gen2 每个通道的传输速率为 5 GT/s。 PCIe Gen3 每个通道的传输速率为 8 GT/s。 所以理论上硬件支持PCIe3.0&#…...
蓝桥杯篇---实时时钟 DS1302
文章目录 前言特点简介1.低功耗2.时钟/日历功能3.32字节的额外RAM4.串行接口 DS1302 引脚说明1.VCC12.VCC23.GND4.CE5.I/O6.SCLK DS1302 寄存器1.秒寄存器2.分钟寄存器3.小时寄存器4.日寄存器5.月寄存器6.星期寄存器7.年寄存器8.控制寄存器 DS1302 与 IAP25F2K61S2 的连接1.CE连…...
【蓝桥杯嵌入式】8_IIC通信-eeprom读写
全部代码网盘自取 链接:https://pan.baidu.com/s/1PX2NCQxnADxYBQx5CsOgPA?pwd3ii2 提取码:3ii2 1、电路图 这个电路允许通过I2C总线与EEPROM(M24C02-WMN6TP)和数字电位器(MCP4017T-104ELT)进行通信。EEPROM用于存储数据,而数字电位器可以用…...
支持向量机原理
支持向量机(简称SVM)虽然诞生只有短短的二十多年,但是自一诞生便由于它良好的分类性能席卷了机器学习领域。如果不考虑集成学习的算法,不考虑特定的训练数据集,尤其在分类任务中表现突出。在分类算法中的表现SVM说是排…...
E8移动建模关联建模表单,写入无数据
场景:移动建模新建一个招聘页面,每次通过移动建模写入建模表数据,建模表的值都要权限重构才可看见,且明细无数据。 排查原因:移动建模提交后返回的ID值为空 正常情况下提交数据应该要返回一个ID值如下: 解…...
一文深入了解DeepSeek-R1:模型架构
本文深入探讨了 DeepSeek-R1 模型架构。让我们从输入到输出追踪 DeepSeek-R1 模型,以找到架构中的新发展和关键部分。DeepSeek-R1 基于 DeepSeek-V3-Base 模型架构。本文旨在涵盖其设计的所有重要方面。 📝 1. 输入上下文长度 DeepSeek-R1的输入上下文长…...
腿足机器人之二- 运动控制概览
腿足机器人之二运动控制概览 高层运动规划MPCRL 中层逆运动学和逆动力学底层执行器控制传感器校正 上一篇博客是腿足机器人的骨架和关节的机械和电气组件,关节不仅需要通过机械设计实现复杂的运动能力,还必须通过电子组件和控制系统来精确控制这些运动。…...
前端面试大全
前端面试大全 一、htmlcss1、垂直定位的实现方式 二、javascript1、深拷贝浅拷贝2、作用域3、原型原型链4、防抖节流5、设计模式 三、ES61、 四、typescript五、vue1、vue2和vue3的区别2、生命周期3、computedwatch 六、react七、uni-app八、Cesiumopenlayer九、Threejs十、ngi…...
如何使用智能化RFID管控系统,对涉密物品进行安全有效的管理?
载体主要包括纸质文件、笔记本电脑、优盘、光盘、移动硬盘、打印机、复印机、录音设备等,载体(特别是涉密载体)是各保密、机要单位保证涉密信息安全、防止涉密信息泄露的重要信息载体。载体管控系统主要采用RFID射频识别及物联网技术…...
Python 调用 DeepSeek API 案例详细教程
本案例为以 Python 为例的调用 DeepSeek API 的小白入门级详细教程 步骤 先注册并登录 DeepSeek 官网:https://www.deepseek.com/ 手机号验证码注册或登录即可 创建 API KEY 注意保存,写代码时必须提供的 打开 Pycharm 创建工程 并安装 OpenAI 库编写代…...
牛客面筋学习
准备阶段: 楼主其实很早就开始准备了,大概从年初开始,陆陆续续总结自己的项目,复盘,然后复习数电模电信号电路等,复习完后,便开始刷题;顺便说一下,如果需要发小论文的也…...
对指针的深入运用-通讯录的初步实现
1.通讯录的功能 手机里的通讯录,是能够存放联系人的信息,包括姓名,性别,地址,电话号码,也可以加上性别。而且手机中的通讯录肯定有增删查改的功能,而且在list里是按照顺序排序的,可以…...
VUE环境搭建
node.js安装 node npm – node Package Management 安装完成后,需要设置: npm config set prefix "D:\nodejs"注意:“D:\nodejs” 此处为自己安装的node.js路径。管理员身份运行 切换镜像源 npm config set registry https://r…...
DeepSeek应用——与PyCharm的配套使用
目录 一、配置方法 二、使用方法 三、注意事项 1、插件市场无continue插件 2、无结果返回,且在本地模型报错 记录自己学习应用DeepSeek的过程,使用的是自己电脑本地部署的私有化蒸馏模型...... (举一反三,这个不单单是可以用…...
C# ASP.NET的未来发展趋势
.NET学习资料 .NET学习资料 .NET学习资料 在快速发展的技术浪潮中,C# ASP.NET不断顺应时代潮流,展现出一系列令人瞩目的未来发展趋势。这些趋势不仅反映了技术的进步,也为开发者带来了更多的机遇和挑战。 云原生应用开发 随着云计算的普及…...
leetcode 416. 分割等和子集
题目如下 数据范围 本题和leetcode 2915. 和为目标值的最长子序列的长度类似,这里不过多赘述。leetcode 2915. 和为目标值的最长子序列的长度 通过代码 class Solution { public:bool canPartition(vector<int>& nums) {int n nums.size();int an…...
WPF进阶 | 深入 WPF 依赖项属性:理解其强大功能与应用场景
WPF进阶 | 深入 WPF 依赖项属性:理解其强大功能与应用场景 前言一、依赖项属性基础概念1.1 什么是依赖项属性1.2 依赖项属性与 CLR 属性的区别1.3 依赖项属性的定义与注册 二、依赖项属性的原理深入剖析2.1 依赖项属性系统的工作机制2.2 元数据(Metadata…...
浅聊MQ之Kafka与RabbitMQ简用
Kafka与RabbitMQ的使用举例 Kafka的使用举例 安装与启动: 从Apache Kafka官网下载Kafka中间件的运行脚本。解压后,通过命令行启动Zookeeper(Kafka的运行依赖于Zookeeper)。启动Kafka的服务器进程。 基本功能实现: 生…...
2.1 JUnit 5 测试发现机制详解
JUnit 5 测试发现机制详解 JUnit 5 的测试发现机制是框架的核心功能之一,负责识别测试类、方法和其他可执行元素,并构建出可执行的测试计划。该机制通过模块化设计支持高度扩展性,允许开发者自定义测试发现规则。以下是其工作原理的详细解析…...
【Elasticsearch】match查询
Elasticsearch 的match查询是全文搜索中最常用和最强大的查询类型之一。它允许用户在指定字段中搜索文本、数字、日期或布尔值,并提供了丰富的功能来控制搜索行为和结果。以下是match查询的详细解析,包括其工作原理、参数配置和使用场景。 1.match查询的…...
【开发心得】CentOS7编译Redis7.4.2打包RPM完整方案
概述 由于最近客户需要解决redis版本升级问题,故而全网寻找安全版本,redis7.4.x版本求而为果,只能自己编译了。 截止发文时间2025-02-12 最新稳定版的redis版本号为7.4.2 Security fixes (CVE-2024-46981) Lua script commands may lead t…...
云计算——AWS Solutions Architect – Associate(saa)6.CloudWatch
Amazon CloudWatch 是一种面向开发运营工程师、开发人员、站点可靠性工程师(SRE)和 IT 经理的监控和可观测性服务。CloudWatch 为我们提供相关数据和切实见解,以监控应用程序、响应系统范围的性能变化、优化资源利用率,并在统一视图中查看运营状况。 Clo…...
面试实战题:手写一个队列和介绍Stream流怎么使用
手写一个队列 思路解析: 队列要有入队和出队操作,还要有查看队列大小,查看队头元素,查看队列是否为空,查看队列是否满了这些功能 package com.example.transational.MyQueue;public class MyQueue<T> {privat…...
Jmeter+Influxdb+Grafana平台监控性能测试过程
一、Jmeter自带插件监控 下载地址:https://jmeter-plugins.org/install/Install/ 安装:下载后文件为jmeter-plugins-manager-1.3.jar,将其放入jmeter安装目录下的lib/ext目录,然后重启jmeter,即可。 启动Jmeter&…...
【现代深度学习技术】深度学习计算 | GPU
【作者主页】Francek Chen 【专栏介绍】 ⌈ ⌈ ⌈PyTorch深度学习 ⌋ ⌋ ⌋ 深度学习 (DL, Deep Learning) 特指基于深层神经网络模型和方法的机器学习。它是在统计机器学习、人工神经网络等算法模型基础上,结合当代大数据和大算力的发展而发展出来的。深度学习最重…...