- 博客(98)
- 资源 (2)
- 收藏
- 关注
原创 SpringBoot整合Radis(redis启用,maven依赖,及具体实用)
例如:@Cacheable(value=”mycache”) 或者 @Cacheable(value={”cache1”,”cache2”}。如果指定要按照 SpEL 表达式编写,如果不指定,则缺省按照方法的所有参数进行组合。缓存的名称,在 spring 配置文件中定义,必须指定至少一个。2、作用是主要针对方法配置,能够根据一定的条件对缓存进行清空。1、配置和@Cacheable一样。1、配置和@Cacheable一样。2、一般用于添加操作。
2024-07-08 09:56:12
484
原创 Reids基础(redis基础详解)——从入门到精通
Bean//Json配置序列化// 使用StringRedisSerializer来序列化和反序列化redis的key值// Hash的key也采用StringRedisSerializer的序列化方式。
2024-07-08 09:53:25
909
原创 Mybatis入门——语法详解:基础使用、增删改查、起别名、解决问题、注释、动态查询,从入门到进阶
注,用别名的时候直接用文件名,全小写。association用于对象,关联。属性就行了(注意我们去掉了。collection用于集合。然后在引用它的语句中设置。
2024-06-27 16:39:17
1041
原创 go语言入门——从环境变量配置、HelloWorld入手,简单明了,基础语法详解
配置GOPATH:值为你项目或者练习项目的路径,自己创建,这里我是在golang安装目录在新建一个空的olangWorkSpace文件下。指针存的是地址,并且可以直接修改地址里的值,java改引用类型的值并不是改地址里的值,而且赋值另外一个值的地址。下载(尽量下载压缩包的zip):https://golang.google.cn/dl/slice切片:类似python的切片,注意slice的切片是引用传递。defer是最后执行的,有点像java的final。多个defer是以压栈的形式执行的。
2024-06-27 16:31:24
607
原创 数据库优化理论——大表的优化方式、垂直分表、垂直分库、水平分表、水平分库、主从复制等
MySQL复制:为保证主服务器和从服务器的数据一致性,在向主服务器插入数据后,从服务器会自动将 主服务器中修改的数据同步过来。I/O线程:负责从主服务器上读取二进制日志(Binary log),并写入从服务器的中继日志(Relay log)中。SQL线程:负责读取中继日志,解析出主服务器中已经执行的数据更改并在从服务器中重放 复制过程如下。主从复制的原理: 主从复制主要有三个线程:binlog线程,I/O线程,SQL线程。
2024-06-21 13:54:01
813
原创 Vue3中禁用Ctrl+滚轮的放缩行为,保证页面比例,(特别适用于单页面应用)
【代码】Vue3中禁用Ctrl+滚轮的放缩行为,保证页面比例,(特别适用于单页面应用)
2024-06-21 10:03:38
260
原创 Java基础——String类详解,实用解释
字符串常量池位于堆内存中,专门用来存储字符串常量,可以提高内存的使用率,避免开辟多块空间存储相同的字符串,在创建字符串时 JVM 会首先检查字符串常量池,如果该字符串已经存在池中,则返回它的引用,如果不存在,则实例化一个字符串放到池中,并返回其引用。
2024-06-20 16:29:31
540
原创 Java基础——自动装箱与拆箱
而对于 g.equals(a+b) , a+b 会先拆箱进行相加 运算,在装箱进行 equals 比较,但是装箱后为Integer , g 为 Long ,所以 g.equals(a+b) 为 false。运算符的两个操作数都是包装器类型的引用,则是比较指向的是否是同一个对象,而如果 其中有一个操作数是表达式(即包含算术运算)则比较的是数值(即会触发自动拆箱的过程)。采用同样的方法,可以看到 Double 的 valueOf 方法,每次返回都是重新 new 一个新的对象,所以上面代码中的结果都不想等。
2024-06-20 16:22:07
742
原创 Java基础——异常详解(Error 与 Exception )
从前三个例子可以看出如果 try{} 中的代码没有异常, catch(){} 代码块中的代码不会执行。所以如果 try{} 和 catch(){} 都含有 return 时,无异常执行 try{} 中的 return ,存在异常执行catch(){} 的 return。不管任何情况,就算 try{} 或 catch(){} 中含有 return , finally{} 中的代码一定会执行,那。
2024-06-19 13:47:53
857
原创 Java基础——内部类详解(成员内部类、局部内部类、匿名内部类、静态内部类)
对于变量 b ,其实是将 fun 方法中的变量 b 以参数的形式对匿名内部类中的拷贝(变量 b 的拷贝)进行赋值初始化。在 run 方法中访问的变量 b 根本就不是 test 方法中的局部变量 b ,而是一拷贝值,所以不存在生命周期不一致的问题,但如果在 run 方法中修改变量 b 的值会导致数据不一致,所以需要加 final 修饰。的局部变量就被销毁,而局部内部类对局部变量的引用依然存在,如果局部内部类要调用没有。final 修饰的局部变量时,就会造成生命周期不一致出错。
2024-06-19 13:39:52
600
原创 Linux常用命令——目录操作,文件操作,解压与压缩,yum命令等
安装ngnix依赖:yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel。指定开放端口:firewall-cmd --zone=public --add-port=3344/tcp --permanent。tar -xzvf file.tar.gz [ -C 路径]//解压tar.gz 【指定解压的目的目录】添加对外开放端口:firewall-cmd --add-port=80/tcp --permanent。
2024-06-18 16:19:54
991
原创 git常见实用命令,简单上手操作
git reset --hard HEAD^ 回退上一版本;添加用户eamil:git config --global user.email ‘’添加远程账号名称:git config --global user.name ‘’拉取:git pull --rebase origin master。提交到远程厂库:git push -u origin master。git reset --hard 版本id 返回到最新修改。提交到git:git commit -m ‘提交信息’初始化厂库:git init。
2024-06-17 17:50:05
346
原创 docker入门——镜像命令、容器命令及其他常用命令
docker logs -tf --tail 10 ID 显示容器日志。docker exec -it ID /bin/bash 进入当前正在运行的容器进行配置,开启新终端 ctrl+D时不会停止容器。docker attach 容器ID 正在执行容器当前代码,进入容器正在执行的终端不会打开新终端 退出时会停止容器。docker rm -f $(docker ps -aq)容器ID强制移除容器。dockers images [-a | -q] 查看镜像。 -f 容器ID [,容器ID,容器ID…
2024-06-17 17:48:09
509
原创 Java进阶——类的加载过程详解
在 Java 中数据类型分为基本数据类型和引用数据类型。基本数据类型由虚拟机预先定义,引用数据类型则需要进行类的加载。按照 Java 虚拟机规范,从 class 文件到加载到内存中的类,到类卸载出内存为止,它的整个生命周期包括如下 7 个阶段:其中,验证、准备、解析 3 个部分统称为链接(Linking)从程序中类的使用过程看。
2024-06-07 16:41:02
929
原创 java进阶——JVM 与 Java 体系结构详解
作为 Java 工程师的你曾被伤害过吗?你是否也遇到过这些问题?运行着的线上系统突然卡死,系统无法访问,甚至直接 OOM想解决线上 JVM GC 问题,但却无从下手新项目上线,对各种 JVM 参数设置一脸茫然,直接默认吧然后就 JJ 了每次面试之前都要重新背一遍 JVM 的一些原理概念性的东西,然而面试官却经常问你在实际项目中如何调优 VM 参数,如何解决 GC、OOM 等问题,一脸懵逼。
2024-06-07 16:37:40
856
原创 IDEA快捷键——IDEA熟练操作必备
智能补全:Ctrl+Shift+Space自我修复:Alt+Enter重构一切:Ctrl+Shift+Alt+T创造万物:Alt+Insert自动完成:Ctrl+Shift+Enter无处藏身:Shift+Shift发号施令:Ctrl+Shift+A代码生成:Template/Postfix +Tab选你所想:Ctrl+W切来切去:Ctrl+Tab字符串格式切换:Alt+Shift+U代码提示:CTRL+空格快捷键内容快捷键内容Ctrl+N查找类Ct
2024-06-06 10:57:04
433
原创 GitHub 常用操作与常用命令——GitHub入门,看这一文就够了
暂存区域最新commit的差异。工作区与最新commit的差异。提交暂缓区个别文件,并添加描述。关联远程库,url为仓库地址。提交暂缓区全部,并添加描述。
2024-06-06 10:53:21
636
原创 操作系统基础——设备管理详解
如果新到达的磁道请求总是比一个在等待的磁道请求近,那么在等待的磁道请求会一直等待下去,也就是出现饥饿现象。电梯算法(扫描算法)和电梯的运行过程类似,总是按一个方向来进行磁盘调度,直到该方向上没有未完成的磁盘请求,然后改变方向。缺点也很明显,因为未对寻道做任何优化,使平均寻道时间可能较长。因为考虑了移动方向,因此所有的磁盘请求都会被满足,解决了 SSTF 的饥饿问题。其中,寻道时间最长,因此磁盘调度的主要目标是使磁盘的平均寻道时间最短。电梯总是保持一个方向运行,直到该方向没有请求为止,然后改变运行方向。
2024-06-05 14:12:35
212
原创 操作系统基础——死锁详解
图 a 的第二列 Has 表示已拥有的资源数,第三列 Max 表示总共需要的资源数,Free 表示还有可以使用的资源数。上图中有五个进程,四个资源。最右边的 E、P 以及 A 分别表示:总资源、已分配资源以及可用资源,注意这三个为向量,而不是具体数值,例如 A=(1020),表示 4 个资源分别还剩下 1/0/2/0。每种类型一个资源的死锁检测算法是通过检测有向图是否存在环来实现,从一个节点出发进行深度优先搜索,对访问过的节点进行标记,如果访问了已经标记的节点,就表示有向图存在环,也就是检测到死锁的发生。
2024-06-05 11:29:23
459
原创 操作系统基础——进程管理详解
类似地,在进行进程切换时,涉及当前执行进程 CPU 环境的保存及新调度进程 CPU 环境的设置,而线程切换时只需保存和设置少量寄存器内容,开销很小。QQ 和浏览器是两个进程,浏览器进程里面有很多线程,例如 HTTP 请求线程、事件响应线程、渲染线程等等,线程的并发执行使得在浏览器中点击一个新链接从而发起 HTTP 请求时,浏览器还可以响应用户的其它事件。线程是独立调度的基本单位,在同一进程中,线程的切换不会引起进程切换,从一个进程中的线程切换到另一个进程中的线程时,会引起进程切换。
2024-06-04 17:44:44
631
原创 操作系统概述——基础概念理解
地址空间的页被映射到物理内存,地址空间的页并不需要全部在物理内存中,当使用到一个没有在物理内存的页时,执行页面置换算法,将该页置换到内存中。由 CPU 执行指令以外的事件引起,如 I/O 完成中断,表示设备输入/输出处理已经完成,处理器能够发送下一个输入/输出请求。此外还有时钟中断、控制台中断等。在微内核结构下,操作系统被划分成小的、定义良好的模块,只有微内核这一个模块运行在内核态,其余模块运行在用户态。互斥共享的资源称为临界资源,例如打印机等,在同一时刻只允许一个进程访问,需要用同步机制来实现互斥访问。
2024-06-04 16:51:52
605
原创 SQL—数据库查询语言,全面详解演示,入门进阶必会
优先处理 AND,当一个过滤表达式涉及到多个 AND 和 OR 时,可以使用 () 来决定优先级,使得优先级关系更清晰。为结束符,而存储过程中也包含了分号,因此会错误把这部分分号当成是结束符,造成语法错误。UPDATE 触发器包含一个名为 NEW 和一个名为 OLD 的虚拟表,其中 NEW 是可以被修改的,而 OLD 是只读的。来组合两个查询,如果第一个查询返回 M 行,第二个查询返回 N 行,那么组合查询的结果一般为 M+N 行。分为左外连接,右外连接以及全外连接,左外连接就是保留左表没有关联的行。
2024-06-03 08:37:33
1531
原创 数据库系统原理详解——数据库学习总结,数据库入门进阶必会
读写锁中读和写操作仍然是互斥的,而 MVCC 利用了多版本的思想,写操作更新最新的版本快照,而读操作去读旧版本快照,没有互斥关系,这一点和 CopyOnWrite 类似。在存在行级锁和表级锁的情况下,事务 T 想要对表 A 加 X 锁,就需要先检测是否有其它事务对表 A 或者表 A 中的任意一行加了锁,那么就需要对表 A 的每一行都检测一次,这是非常耗时的。在这一事务还未结束前,另一事务也访问了该同一数据集合并做了修改,由于第二个事务的修改,第一次事务的两次读取的数据可能不一致。
2024-06-03 08:35:19
1022
原创 Java 虚拟机详解——Java虚拟机、垃圾回收、内存分配策略
以下代码中的 FileSystemClassLoader 是自定义类加载器,继承自 java.lang.ClassLoader,用于加载文件系统上的类。它首先根据类的全名在文件系统上查找类的字节代码文件(.class 文件),然后读取该文件内容,最后通过 defineClass() 方法来把这些字节代码转换成 java.lang.Class 类的实例。
2024-06-02 10:38:31
939
原创 提高代码可读性——程序员进阶必备
那些能直接看出含义的代码不需要写注释,特别是不需要为每个方法都加上注释,比如那些简单的 getter 和 setter 方法,为这些方法写注释反而让代码可读性更差。以上代码中循环部分主要计算距离,这部分不属于代码高层次目标,高层次目标是寻找最小距离的值,因此可以把这部分代替提取到独立的函数中。编程有很大一部分时间是在阅读代码,不仅要阅读自己的代码,而且要阅读别人的代码。首先应该明确一个函数的高层次目标,然后对于不是直接为了这个目标工作的代码,抽取出来放到独立的函数中。基本流程:列出代码所做的所有任务;
2024-06-02 10:33:27
754
原创 C++基础——函数模板与类模板详解
模板分为函数模板和类模板函数模板函数模板不是函数,实例化之后的才是函数类模板类模板也不是真正意义上的类,实例化的后的结果才是类函数模板和类模板实例化都是由编译器处理的,所以我们只需要给他实例化的类型即可函数模板的实例化分为隐式实例化和显示实例化,隐式就是不需要<类型>,显示的需要<类型>函数模板的显示实例化:一般是处理单个模板参数对多个类型的实参时候<类型>,<>中的类型决定最后返回类型(指定模板参数的实际类型)int main()int b = 10;
2024-05-30 09:48:21
295
原创 Linux操作系统基础——基础操作指令
今天我们主要是对于Linux的基础命令进行学习和研究,后序继续更新基础指令,当理解掌握这些指令之后,才算是真正开始学习Linux。
2024-05-30 09:04:37
617
原创 C++基础——List详解
list的优点:1.支持任意位置插入数据,更加效率2.按需进行释放空间,不会有扩容问题list的缺点:1.不能随机访问,即下标访问2.cpu高速缓存效率低高速缓存是一个用于存储临时数据的快速存储器,位于CPU和主内存之间。它具有较高的读取和写入速度,能够提供更快的数据访问。CPU高速缓存是计算机处理器中的一种临时存储器,用于加快对内存中数据的访问速度。当CPU高速缓存效率低时,意味着CPU无法有效利用缓存和内存之间的数据传输,导致程序的执行速度变慢。
2024-05-29 16:55:22
925
原创 C++基础——String类详解
在pos位置上插入字符串str并指定从该字符串的subpos位置开始插入sublen字符。在pos位置上插入字符串str并指定该插入该字符串的字符个数。
2024-05-28 06:15:55
1109
原创 C++基础——vector的详解与运用
vector的优点:1.支持随机访问(以[]的方式)2.cpu高速缓存效率高vector的缺点:1.中间和头部删除元素效率低(要移动数组元素)2.扩容问题(扩容会导致迭代器失效)vector的使用实际上大部分的函数与string中的用法相似,我们只需要知道一点的是,vector是一个可变长的连续有序序列即可,不管是空间还是物理上,数据是连续的。vector的初始的capacity的大小和初始化的数据个数有关,然后依次为基点,在VS平台以近似1.5倍扩容,在Linux下以2倍扩容。
2024-05-28 06:14:13
694
信号与系统课程设计-多径失真干扰滤波与消除
2024-06-18
docker-compose部署LNMP环境(包含 Nginx、MySQL、PHP、Redis)
2024-06-17
基于Python + Django框架的 CMS(优质资源)
2024-06-14
一个基于maven 和 spring 的经典项目,快速启动,可以作为maven模板使用
2024-06-07
基于Spring Boot 与 Spring Cloud的demo项目(快速实验,轻松复现)
2024-06-06
基于Spring支持的redis线程池,(redis Cluster,主从Redis,sentenl)
2024-06-06
基于Springboot的核心服务器与应用系统的运维管理项目(优质毕设)
2024-06-06
基于LSTM和神经网络模型的时间序列预测(优质项目)
2024-06-05
一个Android九宫格图片展示器demo(优质课设,步骤清晰)
2024-06-05
STM32工程文件(涵盖:STD、FreeRTOS移植实验、HAL)优质资源,学习必备
2024-06-05
基于 vue3 + vite2 + django 的小区管理平台(优质项目)
2024-06-05
基于pyqt5框架开发的demo项目 全栈开发,短小精悍,入门学习,上手简单
2024-06-04
基于 Vue框架 的桌面端弹窗demo(优质项目)
2024-06-04
docker部署软件环境的demo 包括:Nginx、MySQL、PHP、Redis等
2024-06-04
一套基于Python的交易量化框架,详细复现步骤
2024-06-04
面向计算机视觉的基础库,支持 Linux、Windows 以及 MacOS 平台
2024-06-04
基于Matlab的GUI的CRC编码译码和海明编码译码(优质毕设)
2024-06-04
基于 yolov5 的智能人脸数据自动打标工具 可自定义人脸检测模型、可导出多种格式标签
2024-06-04
基于SpringBoot、MyBatis、Vue3、ElementPlus的Java网站内容管理系统(高分毕设)
2024-06-02
从网站上爬取来的 csv 文件数据集,用于 neo4j 可视化分析漫威人物关系(节点,关系清晰)
2024-06-01
基于python和图数据库neo4j构建电影应用(高分毕设项目)
2024-06-01
基于Vue+SpringBoot+Neo4j知识图谱入门项目-寻医问药知识图谱
2024-06-01
一个基于Vue3框架的Neo4j的CURD可视化项目(高分课设)
2024-06-01
SptingBoot整合neo4j的简单使用(高分课设)
2024-06-01
基于Java的Spring连接图存数据库Neo4j,知识图谱的应用研究(高分毕设)
2024-06-01
基于 Spring Boot + MySQL 的博客系统,idea连接mysql数据库(优质项目)
2024-06-01
可复用Web模型-基于Java的校园论坛demo(高分期末课设)
2024-06-01
基于 HTML5 + 原生 ES6 Javascript 开发的地图引擎(高分毕设)
2024-06-01
tomcat 的简单使用(增加无线网卡配置,优化网络实现,加入数据库支持)详细部署说明
2024-06-01
基于Html+CSS+JS的端午节学校的网页制作demo,包含首页和端午习俗多个页面(滚动动画,鼠标点击动画,夜间切换模式)
2024-06-01
基于springmvc + mybatis + maven + h5 + jquery + Redis 的分布式多店铺电商系统
2024-05-31
基于vue框架采用vuex开发儿童节投票demo(优质项目)
2024-05-31
一个基于 JavaScript + Css +Html 的高颜值、简单易用的字体图标库(优质资源)
2024-05-30
一个基于Springboot的人工智能机器人,已对接多种主流OpenAI大模型(优质资源)
2024-05-30
JavaIO文件复制优化-JavaIO优化详解(下载可用)
2024-05-30
基于Java的贪吃蛇游戏程序-SWT实现GUI界面(高分毕设)
2024-05-30
基于proteus虚拟仿真平台+74系列逻辑器件,搭建的微程序(结合8086经典外设)高分资源
2024-05-30
AutoSar工程的Python脚本或bat脚本仓库(项目资源)
2024-05-30
基于python实现的爬取指定网站上图片的爬虫(优质毕设)
2024-05-30
基于Springboot3+vue3+element plus的迷你商城(优质项目)
2024-05-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人