- 博客(37)
- 收藏
- 关注
原创 缓存类型及实现方式
数据交换的缓冲区(Cache),程序访问频繁数据会从内存复制到缓存,供程序读取,由于缓存的访问速度高于内存,从而提升程序读写数据速度。
2024-08-04 22:29:43
443
原创 ARP欺骗使局域网内设备断网
kali系统:可使用虚拟机软件模拟kali虚拟机镜像链接:https://www.kali.org/get-kali/#kali-virtual-machines注意虚拟机网络适配器采用桥接模式局域网内存在指定断网的设备。
2024-05-03 16:00:42
998
2
原创 MAT内存分析软件安装
MAT(Memory Analyzer Tool)工具是java堆内存分析器。可以用于查找内存泄漏以及查看内存消耗情况。MAT是Eclipse开发的免费的性能分析工具。下载链接https://www.eclipse.org/mat/downloads.php。
2024-05-03 10:09:38
2210
原创 MySQL修改登录密码
如果提示:ERROR 1819 (HY000): Your password doesnot satisfy the current policy requirements。适用于可以登录进入mysql数据库,想修改密码或者提示密码过期。密码需要满足8字符以上、大小写、特殊字符、数字等复杂度限制。
2024-01-13 22:42:27
607
原创 Nodejs软件安装
Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。官网:http://nodejs.cn/api/我们关注于 node.js 的 npm 功能,NPM 是随同 NodeJS 一起安装的包管理工具,JavaScript-NPM,Java-Maven;
2024-01-13 11:35:37
508
原创 分布式基础概念
微服务架构风格,就像是把一个单独的应用程序开发为一套小服务,每个小服务运行在自己的进程中,并使用轻量级机制通信,通常是HTTP API。这些服务围绕业务能力来构建,并通过完全自动化部署机制来独立部署。这些服务使用不同的编程语言书写,以及不同数据存储技术,并保持最低限度的集中式管理。简而言之:拒绝大型单体应用,基于业务边界进行服务微化拆分,各个服务独立部署运行。
2024-01-04 22:41:20
1379
原创 前后台分离开发
使用Swagger你只需要按照它的规范去定义接口及接口相关信息,再通过Swagger衍生出来的一系列项目和工具,就可以做到生成各种各样的接口文档,以及在线接口调试界面等等。官网:https://swagger.io/knife4j是为java MVC框架集成Swagger生成Api文档的增强解决方案</</</</
2023-12-31 12:54:22
1138
原创 Nginx学习
全局块 和Nginx运行相关的全局配置events块 和网络连接相关的配置http块 代理、缓存、日志记录、虚拟主机配置http全局块Server块Server全局块location块注意:http块中可以配置多个Server块,每个Server块中可以配置多个location块。
2023-12-24 22:08:09
895
原创 Linux系统MySQL主从复制配置
MySQL主从复制是一个异步的复制过程,底层是基于Mysql数据库自带的二进制日志功能。就是一台或多台MySQL数据库(slave,即从库)从另一台MySQL数据库(master,即主库)进行日志的复制然后再解析日志并应用到自身,最终实现从库的数据和主库的数据保持 一直。MySQL主从复制是MySQL数据库自带功能,无需借助第三方工具。
2023-12-17 21:32:14
438
原创 数据库show databases/show tables报错
报错内容:ERROR 1449 (HY000): The user specified as a definer ('mysql.infoschema'@'localhost') does not exist。解决方案:创建该用户,并授权。
2023-12-17 21:28:40
813
原创 连接虚拟机MySQL失败
ping ip地址如果有响应,则网络连接没有问题注:linux系统ip地址可由ip addr或ipconfig命令查看。
2023-12-17 11:10:24
1697
原创 Linux设置静态IP
修改文件/etc/sysconfig/network-scripts/ifcfg-ens33,内容如下。注意:修改后的静态ip、网关、DNS服务器的网段需要和VMware软件。
2023-12-10 20:50:51
508
原创 Linux系统ifconfig网卡无地址
表现为输入当输入ip addr命令时,显示ens33没有具体ip地址。由于启动服务器时未加载网卡,导致IP地址初始化失败。重启系统reboot。
2023-12-10 14:50:26
503
1
原创 Linux执行jar文件no main manifest attribute错误
SpringBoot项目打包后上传到Linux平台,Java -jar 文件名 启动发现no main manifest attribute, in hello-0.0.1-SNAPSHOT.jar。问题是由于maven打包时候没有指定主启动程序,或下方配置中多余true配置跳过主程序配置。添加主启动程序配置或者删除true这一行即可。
2023-12-10 14:40:34
1331
2
原创 SpringBoot项目不支持Java8项目创建
Spring Boot 官方不再支持 Spring Boot 的 2.x 版本了,之后全力维护 3.x;而 Spring Boot 3.x 对 JDK 版本的最低要求是 17,所以在IDEA创建SpringBoot项目, Spring Initializr时没有JDK 8版本。不使用官方提供的 Spring Initializr 来初始化项目,使用阿里云提供的脚手架镜像(下面选择JDK版本就会出现JDK 8,选择后创建即可。)创建SpringBoot项目。
2023-12-10 14:36:43
3109
1
原创 Linux系统sudo获取更高权限执行命令command not found
etc/sudoers文件中secure_path定义了使用sudo时PATH环境变量,可以在此位置添加新的环境变量(即该命令所在目录bin路径)普通用户执行命令时正常输出,当使用sudo获取更高权限执行命令出现command not found。更简单做法是注释掉这行,即可使用当前用户环境变量。
2023-12-10 14:17:45
1144
1
原创 Linux系统MySQL忘记登录密码
etc/my.cnf文件中, [mysqld]下一行添加skip-grant-tables,保存后退出。删除/etc/my.cnf文件中, [mysqld]下第一步中增加的skip-grant-tables。mysql -uroot -p登录MySQL,出现密码输入界面,直接回车,成功进入MySQL。重启MySQL:sudo service mysqld restart。重启MySQL:sudo service mysqld restart。二、登录MySQL修改root用户密码。
2023-12-06 23:09:59
616
1
原创 力扣LeetCode-贪心算法
贪心算法基本知识1.思想基于局部最优的选择逐渐推导出全局最优解2.一般步骤 将问题分解为若干个子问题; 找出合适的贪心策略; 求解每一个子问题的最优解; 将局部最优解合成为全局最优解; 典型例题1. LeetCode 376. 摆动序列题目如果连续数字之间的差严格地在正数和负数之间交替,则数字序列称为 摆动序列 。第一个差(如果存在的话)可能是正数或负数。仅有一个元素或者含两个不等元素的序列也视作摆动序列。例如, [1, 7, 4, 9
2022-03-04 22:31:03
2626
原创 力扣LeetCode-字符串
字符串一、双指针法(一)、用途1. 字符串反转2. 扩展或删除数组中部分元素(二)、 典型例题1. LeetCode344.反转字符串题目编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题来源:力扣(LeetCode) 链接:力扣思路 设置两个指针分别指向字符串的头与尾; 相遇前互相交换值; 代码class So
2022-02-16 21:45:36
626
原创 力扣LeetCode-栈和队列
栈与队列基本知识 C++标准库有很多版本,三个最为普遍的STL版本 HP STL 其他版本的C++ STL,一般是以HP STL为蓝本实现出来的,HP STL是C++ STL的第一个实现版本,而且开放源代码。 P.J.Plauger STL 由P.J.Plauger参照HP STL实现出来的,被Visual C++编译器所采用,不是开源的。 SGI STL 由Silicon Graphics Computer Systems公司参照HP STL实现,被Li
2022-02-16 21:44:36
400
原创 力扣LeetCode-数组
数组一、二分查找应用条件 查找空间有序 算法描述利用l,r两个指针分别指向查找空间首尾,比较中间值与目标值,移动l,r两个指针逐渐逼近目标值模板1(常用)用于查找目标值下标int binarySearch(vector<int>& nums, int target){ if(nums.size() == 0) return -1; int left = 0, right = nums.size() - 1; while(left...
2022-02-16 21:43:43
281
原创 力扣LeetCode-链表
链表一、链表节点定义// 单链表struct ListNode { int val; // 节点上存储的元素 ListNode *next; // 指向下一个节点的指针 ListNode(int x) : val(x), next(NULL) {} // 节点的构造函数};定义一个节点ListNode* head = new ListNode(5);二、设置虚拟头结点作用:设置虚拟头结点使对头结点的处理普遍化ListNode* dummyH...
2022-02-16 21:41:07
650
原创 力扣LeetCode-回溯法
回溯法基本知识1. 思想穷举所有可能,选出想要的答案。2. 解决的问题 组合问题:N个数中按一定规则找出k个数的集合; 切割问题:一个字符串按一定规则有几种切割方式; 子集问题:一个N个数的集合中有多少符合条件的子集; 排列问题:N个数按一定规则全排列,有几种排列方式; 棋盘问题:N皇后,解数独; 3. 模板void backtracking(参数){ if(终止条件){ 存放结果; return...
2022-02-16 21:40:05
683
原创 力扣LeetCode-哈希表
哈希表一、基本知识点1. 定义哈希表是根据关键码的值而直接进行访问的数据结构。2. 解决问题快速判断一个元素是否出现集合里。3. 哈希碰撞解决方法拉链法与线性探测法。4. 常见的三种哈希结构 数组 set(集合) map(映射) 集合 底层实现 是否有序 数值是否可以重复 能否更改数值 查询效率 增删效率 std::set 红黑树 有序 否 否 O(logn) O(
2022-02-16 21:37:25
444
原创 力扣LeetCode-二叉树
二叉树基本知识1. 二叉树的递归遍历 前序遍历 class Solution {public: void traversal(TreeNode* cur, vector<int>& vec) { if (cur == NULL) return; vec.push_back(cur->val); // 中 traversal(cur->left, vec); // 左 trav...
2022-02-16 21:35:32
585
原创 炫酷html5代码
可将以下代码复制至文本文件,并将后缀改为.html,采用浏览器打开即可观看动态效果。代码雨<!DOCTYPE html><html> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> <title>代码雨</title> <style type="text/css"> .
2022-02-16 21:25:56
9616
4
原创 33333
33#include<stdio.h>struct student{ char name[20]; int point;}student[100],t;int main(){ int i,j,m; scanf("%d",&m); for(i=0;i<m;i++) scanf("%s%d",student[i].name,&student[i].point); for(i=0;i<m-1;i.
2021-07-11 13:58:33
95
原创 111111
1#include<stdio.h>#include<stdlib.h>typedef struct shu{ int data; struct shu *next;}SHUZU,*SHU;int main(){ int data,i,delet; SHU head,p,prior; head=(SHU)malloc(sizeof(SHUZU)); head->next=NULL; prior=head; while(1) { scan.
2021-07-11 13:56:43
71
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人