- 博客(17)
- 收藏
- 关注
原创 Spring 自定义注解的实现与使用
*** 自定义权限校验接口* @author 亿先生* @date 2024年1月23日18:57:15*/修饰符访问修饰符必须为 public , 不写默认为pubic;关键字关键字为 @interface;注解名称注解名称为自定义注解的名称,例如上面的 XinLinLog 就是注解名称注解类型元素注解类型元素是注解中内容,根据需要标志参数,例如上面的注解的value;
2024-08-03 19:46:32 1030
原创 实现实时监听后台管理员在线人数
1、管理员登录时,将用户信息存储到Redis里,并且设置过期时间(注意过期时间跟token同步)2、通过Key去Redis遍历获取用户信息,加于展示。
2024-08-01 22:33:51 155
原创 教你如何快速配置七牛云存储
将博客的图片存储服务器进行了改造,支持图片上传至七牛云,同时增加了系统管理,用于设置七牛云的相关的配置以及本地图片服务器配置。
2024-08-01 22:15:34 513
原创 MySQL 之索引(简单版)
索引是一种数据结构,例如 B-Tree,它提高了从表中检索数据行的速度,但需要额外的写入和存储来维护它。查询优化器可以使用索引来快速定位数据,而不必针对给定查询扫描表的每一行。当您使用或时,MySQL 会自动创建一个名为的索引。该索引称为。索引是特殊的,因为索引本身与数据一起存储在同一个表中。聚集索引强制执行表中行的顺序。索引以外的其他索引称为二级索引或非聚集索引。
2024-06-26 22:41:50 834
原创 什么是雪花算法,怎么保证不重复的?
雪花算法使用时间戳作为生成ID的一部分,如果系统时间回拨,可能会导致生成的ID重复。时钟回拨是指系统在运行过程中,可能由于网络时间校准或者人工设置,导致系统时间主动或被动地跳回到过去的某个时间一旦发送这种情况,简单粗暴的做法是抛异常,发现时钟回调了,就直接抛异常出来。另外还有一种做法就是发现时钟变小了,就拒绝ID生成请求,等到时钟恢复到上一次的ID生成时间点后,再开始生成新的ID。
2024-06-26 22:23:12 526
原创 MySQL之事务篇
脏读:读取到其他事务未提交的数据。不可重复读:一次事务多次读取同一行数据,结果不一样。这里着重的是同一行数据的修改。幻读:在同一个事务里查询的两次数据量不一样。事务读取数据时,会读取一个时间点(事务开始时)的数据快照,这个快照保持了事务开始时数据库中的数据的状态。在事务执行期间,其他事务对数据的修改不会影响到当前事务的读取结果。
2024-06-24 00:39:26 997
原创 数据结构和算法(三)
数据结构和算法(三)第三章 排序文章目录数据结构和算法(三)一、简单排序1.冒泡排序a.需求:b.排序原理:c.API设计:d.代码实现:e.时间复杂度分析:2.选择排序a.需求:b.排序原理:c.API设计:d.代码实现:3.插入排序a.需求:b.排序原理:c.API设计:d.代码实现:二、高级排序1.希尔排序a.需求:b.排序原理:c.API设计:d.代码实现:2.归并排序a.需求:b.排序原理:c.API设计:d.代码实现:3.快速排序a.需求:b.排序原理:c.API设计:d.代码实现:总结
2022-05-09 10:03:13 155
原创 数据结构和算法(二)
数据结构和算法(二)第二章 算法分析文章目录数据结构和算法(二)前言一、算法的时间复杂度分析1.概念:事后分析估算方法:事后分析估算方法:a.算法采用的策略和方案;b.编译产生的代码质量;c.问题的输入规模(所谓的问题输入规模就是输入量的多少);d.机器执行指令的速度;需求:2.函数渐近增长a.算法函数中的常数可以忽略;b.算法函数中最高次幂的常数因子可以忽略;c.算法函数中最高次幂越小,算法效率越高。3.算法时间复杂度a.大O记法定义:规则:1) 用常数1取代运行时间中的所有加法常数;2) 在修改后
2022-05-06 14:05:07 125
原创 数据结构和算法(一)
数据结构和算法(一)第一章 数据结构和算法概述文章目录数据结构和算法(一)一、什么是数据结构?二、数据结构分类1.逻辑结构分类:a.集合结构:b.线性结构:c.树形结构:d.图形结构:2.物理结构分类:a.顺序存储结构:b.链式存储结构:三、什么是算法?一、什么是数据结构?官方解释: 数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及他们之间的关系和操作等相关问题的学科。大白话:数据结构就是把数据元素按照一定的关系组织起来的集合,用来组织和存储数据二、数据结构分类传统上
2022-05-04 22:07:51 99
原创 MyBatis-Plus快速入门
MyBatis-Plus快速入门`文章目录MyBatis-Plus快速入门`前言一、mybatis-plus是什么?二、mybatis-plus快速使用1.引入mybatis-plus相关maven依赖2.创建数据表3.创建java bean4.配置application.proprties三、mybatis-plus入门案例(helloworld---CRUD实验)1.mybatis与mybatis-plus实现方式对比2.BaseMapper接口介绍2.1、如何理解核心接口BaseMapper?2.
2022-03-25 21:27:28 1664
原创 Lombok快速入门
Lombok快速入门1.安装idea lombok插件2.加入maven依赖1. @Getter/@Setter自动产生 getter/setter2. @ToString自动重写 toString() 方法,会印出所有变量3. @EqualsAndHashCode自动生成 equals(Object other) 和 hashcode() 方法,包括所有非静态变量和非 transient 的变量如果某些变量不想要加进判断,可以透过 exclude 排除,也可以使用
2022-01-31 13:19:30 372
原创 Vue快速入门-快速掌握Vue
Vue快速入门-快速掌握Vue1. 简介2. Vue—Hello World3. 指令4. 计算属性和侦听器5. 组件化基础6. 生命周期和钩子函数7. 使用Vue脚手架进行模块化开发1、简介Vue (读音 /vju/,类似于 view)是中国的大神尤雨溪开发的,为数不多的国人开发的世界顶级开源软件。 是一套用于构建用户界面的渐进式框架 。Vue 被设计为可以自底向上逐层应用。 MVVM响应式编程模型,避免直接操作DOM , 降低DOM操作的复杂性。1.2、MVVM编程思想MVV
2022-01-20 00:11:49 2795
原创 Java各阶段学习书籍推荐
常用算法《算法导论》《编程之美》《数学之美》数据库-MySQL《MySQL技术内幕——InnoDB存储引擎》《高性能MySQL》《高可用MySQL》网络基础《HTTP权威指南》《TCP/IP详解 卷一》操作系统 Linux《UNIX环境高级编程(第3版)》《鸟哥的Linux私房菜》《Linux内核设计与实现》《Linux命令行大全》JVM《深入理解Java虚拟机》JDK《Effective Java 中文版》《数据结构与算法分析:Java语言描述》SSM《Head
2022-01-14 21:10:06 1596
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人