Java
[Redis]字符串详解
SDS Redis 中的字符串是可以修改的字符串,在内存中它是以字节数组的形式存在的。我们知道 C 语言里面的字符串标准形式是以 NULL(即 0x0)作为结束符,但是在Redis 里面,字符串不是这么表示的。因为要获取以 NULL 结尾的字符串的长度使用的是 strlen 标准库函数,这个函数的算法复杂度是 0(n),它需要对字节数组进行遍历扫描,作为单线程的 Redis 表示承受不起。 Red
云服务器安装宝塔Linux面板教程(建议收藏)
一、简介 宝塔面板是一款简单好用的服务器运维面板。它支持一键LAMP/LNMP/集群/监控/网站/FTP/数据库/JAVA等100多项服务器管理功能。对于新手用云服务器来建站的话,宝塔面板是一个非常好用的工具。 宝塔安装命令:宝塔面板:一站式云服务管理工具 二、宝塔面板的安装命令 安装命令 2分钟装好面板,一键管理服务器 集成LAMP/LNMP环境安装,网站、FTP、数据库、文件管理、软件安装
unplugin-auto-import 简介
unplugin-auto-import 简介 unplugin-auto-import 是一个用于自动导入常用函数和变量的 Vite 和 Webpack 插件。它可以帮助开发者减少手动导入的麻烦,提高开发效率。 安装 使用 npm 或 yarn 安装: 或 配置 Vite 配置 在 vite.config.js 中配置插件: Webpack 配置 在 webpack.config.js 中
unplugin-vue-components 简介
unplugin-vue-components 简介 unplugin-vue-components 是一个用于自动导入 Vue 组件的插件,能够在 Vue 3 项目中简化组件的使用,无需手动导入每个组件。它支持按需加载,提高开发效率。 安装 使用 npm 或 yarn 安装插件: 或 配置 在 Vite 项目中配置 在 vite.config.js 中配置插件: 在 Webpack 项目中
js 树形数组转一维数组,或一维数组转树形数组
树形数组转一维数组 要将一棵树结构(包含 children 属性)拍平为一个一维数组,可以使用递归或迭代的方法。下面是两种常见的实现方式: 1. 使用递归 2. 使用迭代(栈) 结果输出 无论使用递归还是迭代,输出的结果都是一个包含所有节点的扁平数组: 小结 递归 方法简单直观,易于理解。 迭代 方法避免了潜在的栈溢出问题,更适合处理较深的树结构。 一维数组转树形数组 要将一个一维数组转
useCookie函数:管理SSR环境下的Cookie
title: useCookie函数:管理SSR环境下的Cookie date: 2024/7/13 updated: 2024/7/13 author: cmdragon excerpt: 摘要:本文详述了useCookie函数在服务器端渲染(SSR)中的应用,包括读写Cookie、配置选项如maxAge、expires、httpOnly、secure、domain、path及SameSi
深入解析 Vue Router:构建单页面应用的利器
Vue.js 是一个渐进式 JavaScript 框架,常用于构建用户界面。随着应用的复杂度增加,路由(Routing)变得越来越重要,这就是 Vue Router 的用武之地。Vue Router 是官方提供的 Vue.js 路由管理器,用于创建单页面应用(SPA)。本文将详细介绍 Vue Router 的基本概念和使用方法,帮助你更好地构建和管理 Vue.js 应用的路由。 什么是 Vue R
10-Hashtable底层结构和源码分析
10-Hashtable底层结构和源码分析 介绍汇总: Hashtable的基本介绍 Hashtable底层机制说明 Hashtable 和 HashMap 对比 1-Hashtable的基本介绍 存放的元素是键值对:即 K-V Hashtable 的键和值都不能为 null ,不然后抛出 NullPointerException 异常 Hashtable 使用方法基本上和 HashMap
11-Properties基本介绍
11-Properties基本介绍 Properties 类继承自 Hashtable 类并且实现了 Map 接口,也是使用一种键值对的形式来保存数据。(因为继承 Properties ,所以键值对不可以为 null ) Properties 类使用特点和 Hashtable 类类似,但是请注意Properties 类的键值类型都为 String 。虽然可以直接调用父类 put 和 get 方
Vue2-利用自定义指令实现按钮权限控制
文件结构 新建directive目录,并在该目录下新增permission目录,在permission目录下新增hasPerm.js和index.js。 文件内容 hasPerm.js index.js 全局注册 main.js Vuex部分 store→getter.js store→modules→user.js 调用 人生如逆旅 我亦是行人
[NPUCTF2020]ezinclude 1
md5, 题目打开之后是什么都没有的,直接进行抓包 可以看到是给了一个hash值的,而且告诉了 Set-Cookie中的Hash就是$md5($secret.$name)(经典脑洞) 如果$name='',则有$md5($secret.$name)=$md5($secret)=上面的Hash 则/?pass=上面的Hash即可,或者带上&name=传递空值 访问flflflflag.p
HTML页面跳转的两种快捷方法
下面列了五个例子来详细说明,这几个例子的主要功能是:在5秒后,自动跳转到同目录下的hello.html(根据自己需要自行修改)文件。 1) html的实现 <head> <!-- 以下方式只是刷新不跳转到其他页面 --> <meta http-equiv="refresh" content="10"> <
如何在 Vue 项目中优雅地使用图标
1. 字体图标与矢量图标 目前主要有两种图标类型:字体图标和矢量图标。 字体图标是在网页打开时,下载一整个图标库,通常可以通过特定标签例如 <i> 来使用,优点是方便地实现文字混排,缺点是包体积大,且难以自定义。 矢量图标本质是 <svg> 标签,包中只含有所需的图标,且很容易自定义,也可以选用不同图标库来源的图标,甚至可以用自定义 SVG,缺点是与文字混排相对复杂。 本文
Burp Suite Professional 2024.6 for Windows x64 - 领先的 Web 渗透测试软件
Burp Suite Professional 2024.6 for Windows x64 - 领先的 Web 渗透测试软件 世界排名第一的 Web 渗透测试工具包 请访问原文链接:https://sysin.org/blog/burp-suite-pro-win/,查看最新版。原创作品,转载请保留出处。 Burp Suite Professional The world’s #1 web p
Burp Suite Professional 2024.6 for macOS x64 & ARM64 - 领先的 Web 渗透测试软件
Burp Suite Professional 2024.6 for macOS x64 & ARM64 - 领先的 Web 渗透测试软件 世界排名第一的 Web 渗透测试工具包 请访问原文链接:https://sysin.org/blog/burp-suite-pro-mac/,查看最新版。原创作品,转载请保留出处。 Burp Suite Professional The world’
Burp Suite Professional 2024.6 (macOS, Linux, Windows) - Web 应用安全、测试和扫描
Burp Suite Professional 2024.6 (macOS, Linux, Windows) - Web 应用安全、测试和扫描 Burp Suite Professional, Test, find, and exploit vulnerabilities. 请访问原文链接:https://sysin.org/blog/burp-suite-pro/,查看最新版。原创作品,转载请保
在windows下部署thingsBoard本地安装详细教程
ThingsBoard 是一个开源的物联网平台,用于数据收集、处理、可视化展示以及设备管理。ThingsBoard 使用行业标准物联网协议(MQTT,CoAP 和 HTTP)实现设备连接,并支持云和本地部署。 ThingsBoard 结合了可扩展性,容错性和性能,因此您永远不会丢失数据。ThingsBoard 提供设备和资产的管理:通过丰富的服务器端 API 以安全的方式配置,监控和控制您的 Io
java线程池的一个小坑:shutdown之后线程并不会停止运行
问题背景 最近我想要实现一个这样的功能:在线程运行超过一段时间之后就向主程序抛出一个异常,并停止这个线程。 其具体的应用场景是一个任务由多个子任务组成,每个子任务单独一个线程,如果某个子任务长时间未完成就认为这个子任务失败(可能是因为网络原因卡死了),就需要把这个线程结束掉,然后等待调度器重新运行这个子任务。 最初的解决方案及问题 最开始我们参考了网上最常见的解决办法,就是使用ExecutorSe
[Java]面试官:你对异常处理了解多少,例如,finally中可以有return吗?
【版权声明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) https://www.cnblogs.com/cnb-yuchen/p/18299911 出自【进步*于辰的博客】 参考笔记一,P35.4/5。 目录1、介绍2、try...with...resources最后 1、介绍 相信大家对try...catch...finally都很熟悉了,在此我提一点使用细节。 大家先看这段
24年暑期第一周学习报告(2--3)
前言 昨天没有发博客 但也看了一会 可能是还没养成习惯吧 忘了昨天是从哪学的 所以今天汇报学习情况会以倒叙来叙述 一、 了解了一些方法的知识 基本数据类型 引用数据类型 存储原理 重载 等 与函数类似 再有就数组 静态 动态初始化 与c的类似 了解了一些java数组的特点以及书写形式 还有就是 循环和判断 二、 明天打算快点把这些基础知识看个大概 尽快进入下一阶段
9-HashMap底层结构和源码分析
9-HashMap底层结构和源码分析 1-HashMap底层结构说明 HashMap 底层维护的是数组 + 链表 + 红黑树,(jdk 7 版本的 HashMap 底层实现(数组 + 链表),jdk 8 版本底层实现(数组 + 链表 + 红黑树) )。 数组中存放的是 HashMap 的内部类 Node (实现 Map.Entry<K,V>)数据结点。 扩容机制 HashMap 底
大厂性能优化的10大顶级方案 (万字图文史上最全)
文章很长,且持续更新,建议收藏起来,慢慢读!疯狂创客圈总目录 博客园版 为您奉上珍贵的学习资源 : 免费赠送 :《尼恩Java面试宝典》 持续更新+ 史上最全 + 面试必备 2000页+ 面试必备 + 大厂必备 +涨薪必备 免费赠送 :《尼恩技术圣经+高并发系列PDF》 ,帮你 实现技术自由,完成职业升级, 薪酬猛涨!加尼恩免费领 免费赠送 经典图书:《Java高并发核心编程(卷1)加强版》 面试
日常工作中需要避免的9个React坏习惯
前言 React是前端开发领域中最受欢迎的JavaScript库之一,但有时候在编写React应用程序时,可能陷入一些不佳的习惯和错误做法。这些不佳的习惯可能导致性能下降、代码难以维护,以及其他问题。在本文中,我们将探讨日常工作中应该避免的9个坏React习惯,并提供相关示例代码来说明这些问题以及如何避免它们。 1. 属性传递问题(Prop Drilling) 属性传递问题是一种常见的不良习惯,它
go高并发之路——go语言如何解决并发问题
一、选择GO的原因 作为一个后端开发,日常工作中接触最多的两门语言就是PHP和GO了。无可否认,PHP确实是最好的语言(手动狗头哈哈),写起来真的很舒爽,没有任何心智负担,字符串和整型压根就不用区分,开发速度真的是比GO快很多。现在工作中也还是有一些老项目在使用PHP,但21年之后的新项目基本上就都是用GO了。那为什么PHP那么香,还要转战使用GO呢,下面就给大家讲解一下我们新项目从PHP转GO的
8-Map接口和常用方法
8-Map接口和常用方法 Map 与 Collection 并列存在。用于保存具有映射关系的数据:Key-Value Map 中的 key 和 value 可以是任何引用数据类型,会封装到 HashMap$Node 对象中 Map 中的 key 不允许重复 Map 中的 value 可以重复 Map 的 key 可以为 null ,value 也可以为 null ,注意 key 为 null,只
关于最近看到的一些前沿技术
看了一下新技术,感觉自己所了解的技术真的太窄了。 什么新技术呢? WebAssembly 官网 https://webassembly.org https://developer.mozilla.org/zh-CN/docs/WebAssembly WebAssembly 是一种新的编码方式,可以在现代的 Web 浏览器中运行——它是一种低级的类汇编语言,具有紧凑的