自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(158)
  • 资源 (4)
  • 收藏
  • 关注

原创 学习vue第十八天 用最简单、最详细的方式给小白讲解为什么大项目要用Vuex/Pinia!

优点✅ 简单易用✅ 灵活自由✅ 学习成本低缺点❌ 数据分散❌ 难以追踪❌ 容易混乱❌ 不适合大项目。

2026-01-16 14:41:31 200

原创 学习vue第十七天 用最简单、最详细的方式给小白讲解事件总线(EventBus)!

📻校园广播站:一个人说话,所有人都能听到📡无线电台:不需要物理连接,通过"频道"通信🎙️对讲机:任何人都可以发送和接收消息。

2026-01-16 14:01:51 199

原创 学习vue第十六天 最简单、最详细的方式给小白讲解Provide/Inject!

🎁爷爷的遗产:爷爷直接给孙子,不需要爸爸中转📡无线传输:跨越中间层,直接传递数据🔄单向数据流:只能祖先→后代,不能反向。

2026-01-16 11:34:26 249

原创 学习vue第十五天 子组件传递父组件(Emit事件)

步骤子组件(打电话)父组件(接电话)1声明emits准备监听 @事件名2触发 this.$emit(‘事件名’, 参数)定义处理方法3发送消息和数据接收消息和数据4完成通知处理业务逻辑。

2026-01-16 11:11:25 214

原创 学习vue第十四天 小白学父组件传递子组件(Props)

🎁父组件给子组件的礼物📦单向数据流:只能父→子,不能子→父🔒只读的:子组件不能修改✅要验证:确保数据类型正确现在明白父组件传递子组件了吗?就是父组件通过Props给子组件传数据,子组件声明接收并使用!😊。

2026-01-16 10:30:57 149

原创 学习vue第十三天 Vue3组件深入指南:组件的艺术与科学

想象你在搭乐高城堡不是一块巨大的积木 ❌而是很多小积木组合 ✅想象插槽是一个魔法口袋组件定义口袋的位置和大小使用者决定往口袋里放什么🏗️组件拆分:搭乐高积木,模块化开发🎨样式特性:各管各的地盘,互不干扰📡组件通信:传话游戏,各有各的方式🎪组件插槽:魔法口袋,灵活定制内容。

2026-01-15 15:03:08 531

原创 学习vue第十二天 Vue开发工具链指南:从手工作坊到现代化工厂

🏭Webpack:重工业工厂 - 功能全面但复杂🎩Vue CLI:五星管家 - 服务周到且稳定⚡Vite:特斯拉跑车 - 快速现代化🎨create-vue:iPhone - 简洁专注。

2026-01-13 14:16:52 837

原创 学习vue第十一天 Vue3组件化开发指南:搭积木的艺术

Vue3组件化开发指南 核心概念 组件化开发就像搭积木,每个组件是独立的功能单元。Vue3组件主要分为三种类型: 根组件:应用入口,唯一且控制整个应用 全局组件:注册一次,随处可用 局部组件:只在注册的父组件内可用 组件注册方式 全局注册:使用app.component()注册,简单但可能影响性能 局部注册:在组件内通过components选项注册,更灵活且性能优化 命名规范 推荐使用PascalCase注册组件(如UserCard),在模板中使用kebab-case(如<user-card>)

2026-01-13 10:16:21 444

原创 学习vue第十天 V-Model学习指南:双向绑定的魔法师

V-model就像一个贴心的翻译官🗣️用户说话(输入) → 翻译给数据听💾数据变化→ 翻译给页面看🔄实时同步,无需手动管理🎯修饰符加持,功能更强大掌握v-model,你就掌握了Vue表单处理的核心技能!🎉。

2026-01-12 16:31:36 859

原创 学习vue第九天 计算属性与侦听器

Vue3响应式计算属性与侦听器对比指南 计算属性(computed)和侦听器(watch)是Vue3响应式系统的核心特性。计算属性适合处理纯计算逻辑,具有自动缓存机制,只有当依赖变化时才重新计算;而侦听器更适合处理数据变化时的副作用操作,如异步请求或本地存储。本文通过生动比喻和实例代码,展示了二者的核心差异:计算属性是"佛系计算器",负责生成新值;侦听器是"监控摄像头",负责响应变化执行操作。文章还提供了30分钟学习路径和调试技巧,帮助开发者快速掌握这两个特性的适用场

2026-01-09 17:31:22 790

原创 学习vue第八天 Vue3 模板语法和内置指令 - 简单入门

Vue3 模板语法速查指南: 数据填充使用 {{ 表达式 }} 语法 核心指令包括 v-bind(:)、v-on(@)、v-if、v-show、v-for 等 v-if 会销毁/重建 DOM,v-show 仅切换 display 事件修饰符如 .stop、.prevent 简化事件处理 采用声明式编程,数据变化自动更新视图 学习路径:数据展示→属性绑定→事件处理→结构控制 这份30分钟速查表帮助开发者快速掌握Vue3模板核心语法,适合打印张贴随时查阅。

2026-01-09 12:47:10 145

原创 学习vue第七天 从单页面应用(SPA)进化为后台管理系统架构

本文介绍如何将单页面应用(SPA)重构为后台管理系统架构,主要涉及前端嵌套路由的实现。首先创建Dashboard和User两个视图组件,分别用于工作台和用户管理功能。然后配置嵌套路由,使HomeView作为布局容器,包含子路由指向不同功能页面。最后改造HomeView成为母版页,保留侧边栏和顶栏等固定结构,中间区域通过<router-view>动态加载子路由内容。通过这三步改造,实现了从SPA到后台管理系统的架构升级,使系统具备更灵活的路由管理和页面布局能力。

2025-11-24 14:48:40 379

原创 学习vue第六天 后端老哥的前端生存指南:小白来做登录

工程化构建(Vite)强类型约束组件化 UI状态管理(Pinia)路由控制以后前端再跟你说:“这个逻辑很复杂,做不了”,你就可以微微一笑,打开 IDE,帮他写完,然后留下一句:“这也叫复杂?” 😎祝你在全栈的道路上越走越远,Bug 越来越少!🚀。

2025-11-21 17:10:34 677

原创 学习vue第五天 Vue全家桶“四大金刚” 小白入门版

本文摘要:本文是一篇面向初学者的前端开发入门教程,采用生动比喻的方式讲解Vue.js框架及相关生态工具。文章将前端开发比作"建造城堡",通过"地基(Vue.js)""施工队(Vite)""装修公司(Ant Design Vue)""导航系统(Vue Router)"等形象的比喻,带领读者从创建第一个Vue页面开始,逐步实现界面美化、状态管理和页面路由等核心功能。教程包含清晰的代码示例和操作步骤,帮助后端开发者

2025-11-17 17:18:35 782

原创 学习vue第四天 Vue全家桶“四大金刚”速成记

本文介绍了如何从零开始构建一个基于Vue全家桶的前端管理系统。通过Vite、Vue Router、Pinia和Ant Design Vue这"四大金刚"的配合使用,快速搭建出一个具备用户列表和详情查看功能的单页应用。文章详细讲解了项目初始化、核心工具的配置流程,包括Pinia状态管理、Vue Router路由设置、Ant Design Vue组件库引入以及Axios请求封装等关键步骤。最后展示了如何构建基本页面布局和创建视图组件,为后续功能开发奠定基础。整个过程采用通俗易懂的比喻,帮助开

2025-11-17 16:15:45 791

原创 学习vue第三天 Vue 前端项目结构的说明

会遇到浏览器跨域限制。通过配置代理,我们可以让前端的请求先发给 Vite 开发服务器,再由它转发给后端,从而绕开跨域。希望这份说明能帮助你理解这个项目。简单来说,你可以把前端项目看成一个独立的、需要“编译”的服务,它“编译”后的产物 (这是 Node.js 项目的清单文件。目录) 才是需要你来部署的最终成品。把整个项目想象成一个需要“编译”和“运行”的服务。这是前端构建工具 Vite 的配置文件。配置后,前端代码里可以直接请求。)直接请求你的后端接口(比如。来实现前后端分离的联调。,特别是用于接口联调。

2025-11-12 15:25:19 623

原创 vue学习第二天

摘要:使用npm create vite@latest vueDemo --template vue-ts命令可快速创建Vue+TypeScript项目。进入项目目录执行npm run dev启动开发服务器,默认访问地址为http://localhost:5173/。项目采用Vite构建工具,包含src源码目录、main.ts入口文件等标准结构,支持热更新和TypeScript类型检查。开发完成后可通过npm run build生成生产代码。(150字)

2025-11-12 14:50:41 148

原创 vue学习第一天

本文提供了前端开发环境的配置指南,包括核心工具Node.js(建议LTS版本≥16.x)及其包管理工具npm/yarn、现代化构建工具Vite、类型语言TypeScript的安装说明。推荐使用VSCode作为IDE并安装Volar、TS插件及代码规范工具ESLint+Prettier,同时需配置Git版本控制系统。文末通过示例验证了Node.js(v22.20.0)和Git(2.41.0)的成功安装,强调工具版本应参考官方文档持续更新。(149字)

2025-11-12 14:38:06 216

转载 2021-05-30 排序优化:如何实现一个通用的、高性能的排序函数

今天,我会讲三种时间复杂度是 O(n) 的排序算法:桶排序、计数排序、基数排序。因为这些排序算法的时间复杂度是线性的,所以我们把这类排序算法叫作线性排序(Linear sort)。之所以能做到线性的时间复杂度,主要原因是,这三个算法是非基于比较的排序算法,都不涉及元素之间的比较操作。这几种排序算法理解起来都不难,时间、空间复杂度分析起来也很简单,但是对要排序的数据要求很苛刻,所以我们今天学习重点的是掌握这些排序算法的适用场景。...

2021-05-30 17:34:39 247

转载 2021-05-25 线性排序:如何根据年龄给100万用户数据排序

今天,我会讲三种时间复杂度是 O(n) 的排序算法:桶排序、计数排序、基数排序。因为这些排序算法的时间复杂度是线性的,所以我们把这类排序算法叫作线性排序(Linear sort)。之所以能做到线性的时间复杂度,主要原因是,这三个算法是非基于比较的排序算法,都不涉及元素之间的比较操作。...

2021-05-30 10:41:37 291

转载 2021-05-25 JAVA线上故障排查全套路

1线上故障主要会包括cpu、磁盘、内存以及网络问题,而大多数故障可能会包含不止一个层面的问题,所以进行排查时候尽量四个方面依次排查一遍。同时例如jstack、jmap等工具也是不囿于一个方面的问题的,基本上出问题就是df、free、top 三连,然后依次jstack、jmap伺候,具体问题具体分析即可。CPU一般来讲我们首先会排查cpu方面的问题。cpu异常往往还是比较好定位的。原因包括业务逻辑问题(死循环)、频繁gc以及上下文切换过多。而最常见的往往是业务逻辑(或者框架逻辑)导致的,可以使用j

2021-05-25 22:56:22 351

转载 2021-05-24 如何用快排思想在O(n)内查找第K大元素

今天,我讲两种时间复杂度为 O(nlogn) 的排序算法,归并排序和快速排序。这两种排序算法适合大规模的数据排序。归并排序和快速排序都用到了分治思想,非常巧妙。我们可以借鉴这个思想,来解决非排序的问题,比如:如何在 O(n) 的时间复杂度内查找一个无序数组中的第 K 大元素?归并排序的原理归并排序的核心思想还是蛮简单的。如果要排序一个数组,我们先把数组从中间分成前后两部分,然后对前后两部分分别排序,再将排好序的两部分合并在一起,这样整个数组就都有序了。归并排序使用的就是分治思...

2021-05-24 23:35:53 311

转载 2021-05-16 排序(上):为什么插入排序比冒泡排序更受欢迎?

如何分析一个“排序算法”?排序算法的执行效率排序算法的内存消耗冒泡排序(Bubble Sort)插入排序(Insertion Sort)选择排序(Selection Sort)

2021-05-18 00:11:28 192

转载 2021-05-15 递归:如何用三行代码找到“最终推荐人”

如何理解“递归”? 递归需要满足的三个条件 如何编写递归代码? 递归代码要警惕堆栈溢出 递归代码要警惕重复计算 怎么将递归代码改写为非递归代码? 如何找到“最终推荐人”? ...

2021-05-16 00:39:56 143

转载 2021-05-12 09丨队列:队列在线程池等有限资源池中的应用

如何理解队列 顺序队列和链式队列

2021-05-15 00:07:51 137

转载 2021-05-11 08丨栈:如何实现浏览器的前进和后退功能

栈的特点 栈是一种操作受限的“线性表”,只需要在一端操作插入和删除。先进后出,后进先出; 如何实现栈 栈主要包含两个操作,在栈顶插入一个数据,或者在栈顶删除一个数据; 栈在函数调用中的应用 支持动态扩容的顺序栈 栈在表达式中的应用 使用两个栈,一个存储操作数,一个存储运算符;数字直接入栈;当运算符入账,遇到栈顶运算符优先级别低于或者等于它的时候,就把前面两个数取出来执行运算,再把结果入栈; 栈在括号匹配中的应用 我们假设表达式中只包含三种括号..

2021-05-11 23:37:05 257

转载 2021-05-10 07丨链表(下):如何轻松写出正确的链表代码?

技巧一:理解指针或引用的含义技巧二:警惕指针丢失和内存泄漏技巧三:利用哨兵简化实现难度技巧四:重点留意边界条件处理技巧五:举例画图,辅助思考技巧六:多写多练,没有捷径...

2021-05-11 21:51:41 164

转载 2021-05-09-链表(上):如何实现LRU缓存淘汰算法

链表的特点 通过指针将一组零散的内存块串联在一起;内存块称为链表的结点;为了将所有的结点联系起来,每个链表的结点除了存储数据之外,还需要记录链上下一个结点的地址,这个记录下个结点地址的指针叫后继指针; 单链表 双向链表 循环链表 双向循环链表 链表vs数组性能 如何实现lru缓存淘汰算法 如何判断一个字符串是回文字符串,如果这个字符串是链表存储的,时间空间复杂度如何 ...

2021-05-10 23:45:17 145

转载 2021-05-09实战一(上):业务开发常用的基于贫血模型的MVC架构违背OOP吗

什么是贫血模型?什么是充血模型? 为什么说基于贫血模型的传统开发模式违反 OOP? 基于贫血模型的传统开发模式既然违反 OOP,那又为什么如此流行? 什么情况下我们应该考虑使用基于充血模型的 DDD 开发模式 ...

2021-05-09 22:26:17 204

转载 2021-05-08-数组:为什么很多编程语言中数组都从0开始编号?

数组:线性表数组基本概念 数组的特点 数组和链表的区别 数组下表为什么从0开始

2021-05-09 00:55:01 136

转载 centos 8 steam docker install rabbitmq

查找镜像带有可视化界面[root@VM-0-15-centos ~]# docker search rabbitmq:managementNAME DESCRIPTION STARS OFFICIAL AUTOMATEDmacintoshplus/rabbitmq-management Based on.

2021-03-30 11:32:10 259

原创 centos8 stream install docker

使用DNF添加并启用官方Docker CE存储库。在终端窗口中输入以下命令: 安装containerd.io包手动 安装最新版docer ce 启用docker 添加当前用户加入docker用户组 关闭防火墙 重新登录,可以使用了 sudo dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.reposudo dnf install

2021-03-30 10:10:16 1300 1

转载 20200808 linux搭建zookeeper集群

搭建zookeeper集群(一主两从)zk启动依赖java的JDK,所以要先安装JDK不会安装JDK的可以看这https://www.jianshu.com/p/ea5c72b273d7教程,安装完成JDK后下载zk的tar包并使用winSCP上传到3台linux服务器https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/开始搭建zookeeper集群(一主两从)我启动了3台linux服务器,IP分别是192.168.79.1

2020-08-08 14:57:07 482

转载 20200607 spring常见面试

面试题1. Spring中bean的循环依赖怎么解决?(一). 首先说一下什么是Spring的循环依赖:其实就是在进行getBean的时候,A对象中去依赖B对象,而B对象又依赖C对象,但是对象C又去依赖A对象,结果就造成A、B、C三个对象都不能完成实例化,出现了循环依赖。就会出现死循环,最终导致内存溢出的错误。(二).如何去解决Spring的循环依赖呢?1.先知道什么是Spring的“三级缓存”:就是下面的三个大的Map对象,因为Spring中的循环依赖的理论基础其实是基于java中的值传递的,

2020-06-07 21:56:24 304

转载 20200607 MYSQL基础面试

  事务四大特性(ACID)原子性、一致性、隔离性、持久性?  原子性(Atomicity)  原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。  一致性(Consistency)  事务开始前和结束后,数据库的完整性约束没有被破坏。比如A向B转账,不可能A扣了钱,B却没收到。  隔离性(Isolation)  隔离性是当多个用户并发访问数据库时,比如操作同一张表时,数据库为每一个用户开

2020-06-07 21:35:42 236

转载 20200512 JVM监控命令详解(转)

JVM监控命令基本就是jps、jstack、jmap、jhat、jstat几个命令的使用就可以了JDK本身提供了很多方便的JVM性能调优监控工具,除了集成式的VisualVM和jConsole外,还有jps、jstack、jmap、jhat、jstat等小巧的工具,本博客希望能起抛砖引玉之用,让大家能开始对JVM性能调优的常用工具有所了解。 现实企业级Java开发中,有时候我们会碰到下面这些问题:OutOfMemoryError,内存不足内存泄露线程死锁锁争用(Lo...

2020-05-12 15:05:36 294

转载 20200512 10分钟看懂, Java NIO 底层原理

1.1. JavaIO读写原理无论是Socket的读写还是文件的读写,在Java层面的应用开发或者是linux系统底层开发,都属于输入input和输出output的处理,简称为IO读写。在原理上和处理流程上,都是一致的。区别在于参数的不同。用户程序进行IO的读写,基本上会用到read&write两大系统调用。可能不同操作系统,名称不完全一样,但是功能是一样的。先强调一个基础知识:read系统调用,并不是把数据直接从物理设备,读数据到内存。write系统调用,也不是直接把数据,写入到物理.

2020-05-12 10:18:19 248

转载 20200510 redission入门

我们现在看到的就是redission官方网站https://redisson.org首页可以看出来,redisson可以实现很多东西,在redisson的基础上,redisson做了超多的封装,我们看一下,例如说Spring Cache,TomcatSession,Spring Session,可排序的Set,还有呢Sortedsort,下面还有各种队列,包括这种双端队列,还有map,这些是数据结构,下面就是各种锁,读写锁,这里面的锁还包含,可重入锁,还有CountDownLant...

2020-05-10 19:35:09 316

转载 20200510 分布式锁的几种实现

分布式锁很久之前有讲过并发编程中的锁并发编程的锁机制:synchronized和lock。在单进程的系统中,当存在多个线程可以同时改变某个变量时,就需要对变量或代码块做同步,使其在修改这种变量时能够线性执行消除并发修改变量。而同步的本质是通过锁来实现的。为了实现多个线程在一个时刻同一个代码块只能有一个线程可执行,那么需要在某个地方做个标记,这个标记必须每个线程都能看到,当标记不存在时可以设置该标记,其余后续线程发现已经有标记了则等待拥有标记的线程结束同步代码块取消标记后再去尝试设置标记。分布式环境下

2020-05-10 12:56:12 212

转载 20200510 深入理解SPI机制

一、什么是SPISPI ,全称为 Service Provider Interface,是一种服务发现机制。它通过在ClassPath路径下的META-INF/services文件夹查找文件,自动加载文件里所定义的类。这一机制为很多框架扩展提供了可能,比如在Dubbo、JDBC中都使用到了SPI机制。我们先通过一个很简单的例子来看下它是怎么用的。1、小栗子首先,我们需要定义一个接口,SPIServicepackage com.viewscenes.netsupervisor.sp.

2020-05-10 08:40:46 256

WIN7 64位机上免安装MySql架设

win7 64位 免安装 mysql,无需配置,含作者常用批处理命令

2011-06-12

英文文献翻译,最新出炉~

英文 文献 翻译 高质量 毕业论文 最新出炉的 给有需要的人~~~~~

2009-05-06

算法设计与分析要点复习要点

算法设计与分析要点复习,比较精辟

2008-01-05

矩阵连乘源代码

算是经典的矩阵连乘的源代码,给有需要的人~~~~~

2008-01-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除