- 博客(37)
- 资源 (3)
- 收藏
- 关注
原创 【如何自建MCP服务器?从协议原理到实践的全流程指南】
是AI领域的一项革命性开放标准,由Anthropic推动,旨在解决大语言模型(LLM)与外部系统的集成难题。它类似于AI应用的"USB-C接口",通过标准化协议让AI模型能够动态访问本地/远程数据源、工具和API,实现真正的"即插即用"能力。通过自建MCP服务器,开发者可以突破传统AI应用的边界,构建真正智能化的数字助手。随着OpenAI等厂商的官方支持,MCP正在成为AI时代的"万用接口"。让模型具备实时获取天气、访问数据库、执行计算等能力,解决"时间盲区"、"数据孤岛"等问题。
2025-04-08 09:43:20
916
原创 Vue 3 学习笔记
Vue 3 真的感觉是一个全新的世界!刚开始接触的时候,和 Vue 2 的一些概念既有联系,又有很大的不同。我感觉学习 Vue 3 的过程就像是升级打怪,一步一步解锁新技能。这份笔记会记录我学习 Vue 3 的主要知识点,以及我在学习过程中遇到的问题和一些小心得。希望我的笔记能让你在 Vue 3 的学习路上少走弯路!
2025-02-17 09:49:04
1080
原创 TypeScript 学习指南
/ 定义API响应接口T;// 用户接口id: number;// API调用示例${// 定义API响应接口 interface ApiResponse < T > {T;} // 用户接口 interface User {} // API调用示例 async function fetchUser(id : number) : Promise < ApiResponse < User >> {`);
2025-02-04 14:19:01
1164
原创 Vue3 完整学习笔记 - 第五部分
自定义 ref 的实现防抖/节流的实现追踪依赖和触发更新// 创建防抖的refreturn {get() {track() // 追踪依赖},trigger() // 触发更新}, delay)})// 创建本地存储的refreturn {get() {track()},trigger()})// 使用示例// 自动防抖的搜索})// 自动持久化的设置})</script>
2025-02-04 12:49:34
395
原创 Vue3 完整学习笔记 - 第三部分
Hook 的封装原则复用逻辑的最佳实践响应式数据的处理return {count,double,increment,decrement,resettry {return {data,error,loading,fetch// 使用示例// 使用计数器// 使用异步数据// 组合多个 hooksreturn {users,count,increment</script>
2025-02-04 12:46:23
443
原创 【Vue3 完整学习笔记 - 第一部分】
Vue3 的主要特性和优势相比 Vue2 的重大改进为什么要学习 Vue3性能提升:重写虚拟DOM实现编译器优化更高效的组件初始化新特性:TeleportFragmentsSuspense更好的 TypeScript 支持// Vue2 写法data() {return {count: 0},methods: {// Vue3 Composition API 写法setup() {return {count,increment。
2025-02-04 12:42:38
658
原创 【CentOS系统下Tomcat日志管理的最佳实践:自动清理catalina.out】
这个设置将每天凌晨 2 点检查 catalina.out 文件的大小,如果超过 10GB,就会清理它并创建一个备份。保存文件并退出编辑器(在 nano 中,按 Ctrl+X,然后 Y,再按 Enter)。设置 cron 任务来定期运行脚本。然后将上面的脚本内容粘贴到这个文件中。保存并退出 crontab 编辑器。
2024-10-16 15:59:49
483
原创 【解决Tomcat在版本9.0.86以上发生异常:org.apache.tomcat.util.codec.binary.Base64.decodeBase64()问题】
如果你希望最小化更改,可以直接添加 Apache Commons Codec 依赖,并修改为使用。如果你愿意更新到现代的标准 API,推荐使用。
2024-09-19 08:58:20
1543
原创 【从0开始在CentOS 9中安装Tomcat】
Tomcat 运行在 Java 环境下,因此首先需要安装 Java。如果没有安装 Java,可以按照以下步骤进行安装。创建一个 Systemd 服务文件,确保 Tomcat 在系统启动时自动启动。你应该看到 Tomcat 欢迎页面,表示 Tomcat 已经成功安装并运行。),选择你需要的 Tomcat 版本。如果需要配置 Tomcat 的管理用户,可以编辑。至此,Tomcat 已成功安装并配置为开机自启动。前往 Apache Tomcat 官方下载页面(
2024-09-12 17:35:07
1429
原创 【从0开始在CentOS 9中安装redis】
这个错误表示你的系统在尝试访问 CentOS 仓库的镜像站时,无法解析主机名,导致无法下载仓库的元数据文件。不过,使用 CLI 修改的配置是临时的,重启后将失效。也无法解析主机名,可能问题出在系统的网络配置或 DNS 设置上,按照上面的步骤修改 DNS 设置应该可以解决问题。否则,可能是网络配置问题,建议检查网络接口或路由器设置。在 CentOS 系统上,安装 Redis 后,默认的 Redis 配置文件通常位于。如果你的服务器启用了防火墙,需要确保 Redis 默认使用的端口。
2024-09-12 09:59:20
1583
原创 为什么要使用SOCI库?她有什么好的?
SOCI (Simple Open (Database) Connectivity Interface) 是一个开源的用于C++数据库访问的库。它为C++程序员提供了一种简单统一的接口,用于访问多种关系数据库。
2024-09-05 09:21:03
812
原创 【编译SOCI数据操作库教程】
安装编译好的 SOCI 库。在项目中配置头文件和库文件的路径。链接相应的库文件。在代码中使用 SOCI 提供的接口操作数据库。编译并运行项目。这样您就可以在项目中使用 SOCI 库与数据库进行交互了。
2024-09-04 17:16:51
1018
原创 WPF 中常用 `Transform` 类的介绍、使用示例和适用场景
使用场景解释代码示例示例代码解释Transform 类描述使用示例适用场景用于沿 X 轴或 Y 轴平移(移动)元素。移动控件的位置,如动画中移动按钮或图片。用于围绕指定点旋转元素。旋转控件或图像,如旋转按钮、旋转动画等。用于按比例缩放元素,可以分别缩放 X 轴和 Y 轴。缩放控件或图像的大小,如放大/缩小按钮或图片。用于沿 X 轴或 Y 轴倾斜元素。倾斜控件或图像,创建类似3D效果,如按钮倾斜动画。使用矩阵变换元素,可以进行复杂的平移、旋转、缩放、倾斜等组合操作。
2024-08-30 14:23:32
1106
原创 【 WPF 中常用的 `Effect` 类的介绍、使用示例和适用场景】
使用场景解释示例代码示例代码解释Effect 类描述使用示例适用场景为元素应用投影效果。为控件、文本、图像添加阴影效果,增加立体感和视觉层次。BlurEffect为元素应用模糊效果。模糊背景、图像或文本,常用于突出前景内容或创建模糊背景效果。通过位图管道为元素应用特效(已过时,建议使用Effect子类)。此类已过时,不建议使用。用于兼容旧版应用的特效。为元素应用外部光晕效果(已过时,建议使用BlurEffect和组合)。此类已过时,不建议使用。用于创建发光或突出效果。
2024-08-30 14:22:01
1289
原创 【WPF中的图形(Shape)】
使用场景解释代码示例Shape 类描述使用示例适用场景Rectangle用于绘制矩形的形状。创建矩形或方形的图形元素,如背景、边框或按钮装饰。Ellipse用于绘制椭圆或圆形的形状。绘制圆形或椭圆形元素,适用于按钮、装饰图形等。Line用于绘制直线。绘制简单的直线,如分隔线、连接线或图表中的轴线。Polygon用于绘制由多个线段组成的闭合多边形。创建三角形、五边形等多边形形状,适用于图标、装饰图案等。Polyline用于绘制由多个线段组成的折线(不闭合)。绘制折线或路径,如图表中的数据线或路径图。
2024-08-30 11:21:18
930
原创 【 WPF 中常用的Brush类的简要介绍、使用方法和适用场景】
使用场景解释示例代码(为按钮创建一个线性渐变背景)Brush 类描述使用示例适用场景用于填充单一颜色的画刷。控件背景、边框、前景色等简单填充场景。用于沿线性方向填充渐变颜色的画刷。创建从一个颜色过渡到另一个颜色的背景,如按钮的渐变背景。用于沿径向(从中心向外)填充渐变颜色的画刷。圆形区域或背景的颜色渐变,如圆形按钮或装饰元素。ImageBrush用于使用图像填充区域的画刷。使用图像作为控件的背景或填充,如按钮、边框、文本块的背景图像。用于使用其他视觉元素(如控件)填充区域的画刷。
2024-08-30 11:15:29
943
原创 【WPF动画】
示例代码1示例代码2:使用 `Storyboard` 组合多个动画代码解释应用场景动画类描述使用示例适用场景用于为double类型的属性(如WidthHeight等)创建动画。控件大小的变化、透明度的渐变等。用于为Color类型的属性(如BackgroundForeground等)创建动画。背景色、前景色的渐变效果。用于为Point类型的属性(如CenterPosition等)创建动画。控件位置的变化、路径动画。用于为Thickness类型的属性(如MarginPadding等)创建动画。
2024-08-30 10:33:06
1612
原创 在centos中一些常用的命令
请注意,在执行删除操作之前,务必仔细检查命令是否正确,以免意外删除重要的文件夹。同时,小心使用通配符匹配文件类型,以免意外地包含了不需要备份的文件。请注意,在删除文件时要格外小心,确保指定正确的目录和文件类型,以免误删重要文件。仔细检查列表中的文件夹是否都是您确实想要删除的。这个命令会在当前目录及其子目录中搜索所有以 “NWLSC” 开头的文件夹,并使用。如果IP地址被占用,您将在ARP缓存中看到相应的IP和MAC地址条目。只有当您完全确定列表中的文件夹都可以安全删除时,才执行带有。
2024-08-19 14:20:08
962
原创 vs2022 x64 C/C++和汇编混编 遇到的坑
在 x64 汇编中,堆栈的对齐要求是函数调用时堆栈指针(RSP)必须是 16 字节对齐的。为了确保这一点,我们需要根据保存的寄存器数量来决定是否要调整堆栈指针。
2024-08-12 10:56:15
936
原创 读取指定进程内存信息 - 特征码秒级匹配
在Windows系统中,访问进程的内存时经常会遇到Error 299,这表示“部分读取请求已完成”。这通常发生在尝试读取的内存块跨越了可访问和不可访问的内存区域。为了避免这个问题,我们可以在读取内存时使用函数,来获取每个内存块的状态和大小。然后只读取那些可以访问的内存区域。
2024-07-31 13:37:00
708
原创 c++读取指定位置硬编码数据
总结一下,这两句代码的作用是从硬编码指令中提取相对偏移量,并将其添加到指令结束位置,以计算目标地址。需要根据实际情况调整,这取决于硬编码指令在目标模块中的偏移位置。你需要确保这个偏移是正确的,以便正确解析指令和读取内存。相对于该指令的偏移量,然后读取这个内存地址的值。是我们从指令中提取出来的偏移量。这个偏移量是相对于下一条指令的地址的。是固定的,可以通过解析该指令中的操作数来动态获取内存地址。这行代码从读取的指令字节中提取相对偏移量。你可以解析可执行文件中的指令,计算出。是硬编码指令在目标进程中的地址。
2024-07-25 10:04:19
1085
原创 PE(Portable Executable) 文件解析
部分名称描述作用关键字段及说明DOS HeaderDOS MZ 头包含 DOS 兼容头和实际 PE 文件的偏移量e_magic(必须为 “MZ”),e_lfanew(PE 头偏移量)PE HeaderPE 文件头标识为 PE 文件,包含文件的整体信息SignatureMachine可选头(实际上是必须的)包含操作系统所需的所有信息MagicImageBase节头表描述各个段的信息,包含名称、大小、偏移等每个节头包含Name.text代码段存放可执行代码二进制代码数据。
2024-06-05 10:37:15
1097
原创 汇编之mov、movsx、movzx
指令名称描述作用x86 表现x64 表现示例mov将数据从一个位置复制到另一个位置直接数据传输传输数据,不改变数据内容传输数据,不改变数据内容movsx将源操作数符号扩展到目标操作数有符号扩展数据将较小数据类型符号扩展到较大数据类型将较小数据类型符号扩展到较大数据类型movzx将源操作数零扩展到目标操作数无符号扩展数据将较小数据类型零扩展到较大数据类型将较小数据类型零扩展到较大数据类型通过movmovsx和movzx。
2024-05-24 14:13:48
2510
1
原创 逆向之if-else 和 switch分析
特性if-else结构switch结构实现方式一系列条件判断和跳转指令使用跳转表(jump table)或一系列条件判断优点简单直接,适用于少量条件判断适用于大量条件分支,执行效率高(跳转表)缺点条件分支多时,代码复杂且效率低跳转表占用空间,分支条件过少时效率不高特点每个条件都需要单独判断,执行效率取决于条件的复杂性和数量对连续的值分支效率高,不连续值时仍需要条件判断共同点都用于实现条件分支和多路径执行流都依赖条件判断或跳转来控制执行流x86表现通常需要更多的跳转指令,导致更多的CPU周期。
2024-05-23 15:26:20
862
1
原创 汇编之函数调用约定(calling conventions)
不同的函数调用约定在参数传递、栈管理和性能优化方面各有优缺点,并在 x86 和 x64 架构下使用不同的寄存器和栈。选择适合的调用约定可以根据具体的编程需求和目标平台进行优化。
2024-05-21 16:54:28
983
2
原创 汇编之条件跳转指令(JCC)指令和无条件指令
条件跳转指令:用于实现条件判断和控制流转移,依赖于特定的标志位,只有在条件满足时才跳转。无条件跳转指令:用于实现无条件的跳转、子程序调用和返回以及中断处理,不依赖于任何条件,每次执行都会跳转。这两类指令在汇编语言中各有用途,共同为实现复杂的程序控制流提供了必要的工具。
2024-05-17 14:54:36
6912
原创 汇编之基础指令
在汇编语言中,算术运算指令是用来执行基本的数学运算的。下面是一个表格,列出了常见的算术运算指令,包括指令名称、操作数1、操作数2、指令的功能描述以及示例。这些指令是汇编语言中常用的位运算指令,用于对数据的二进制位进行各种操作,以满足不同的编程需求。在汇编语言中,位运算指令是用于对数据的二进制位进行操作的指令。在汇编语言中,逻辑运算指令是用于对数据的逻辑位进行操作的。寄存器中的值进行按位与运算,结果不存储,仅设置标志位用于后续条件判断。寄存器中的值,结果不存储,仅设置标志位用于后续条件判断。
2024-05-17 11:20:07
1168
原创 IIS反向代理Tomcat站点的实现方案
确保Tomcat站点可以正常访问例如:直接在浏览器打开,能正确呈现页面。打开浏览器,分别输入地址http://localhost:8080/项目文件名和http://本机IP地址/项目文件名,如果都能够正常访问到项目则说明代理成功。(如本机IP地址为,项目文件名为demo,则使用Tomcat服务器和IIS服务器访问的地址分别为和注意:查看本机ip地址方式:win+r,打开运行窗口输入cmd回车进入命令提示符,输入ipconfig命令即可查看本机ip地址。
2024-05-15 10:42:24
2398
4
SignalR-Core-SqlTableDependency.zip
2020-03-07
PhantomJs+selenium webdriver+验证码识别
2018-11-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人