
实战笔记
文章平均质量分 94
项目实战了解知识
浩泽学编程
CSDN优质创作者、华为云云享专家,阿里云签约博主、专家博主,曾获国家级荣誉三项,省级荣誉多项,企业奖学金三次,已有专利一项、软件著作权三项。主要学习研究java领域,欢迎大家一起学习交流。
展开
-
【SpringBoot】自定义工具类实现Excel数据新建表存入MySQL数据库
本文主要介绍使用EasyExcel读取Excel内数据并转换为csv格式数据(String字符串),然后实现字符串分割,分割出属性名和属性值建表插入MySQL数据库中。工具类:实际运用中,只需要如下调用:Excel文件格式如下:读取的数据如下格式(这里我用加号拼接更清晰,实际上就是一个包含换行符的字符串,并不包含+号):二、分割建表入库分割csv数据并调用自定义建表和插入函数:动态构造建表sql和插入sql工具类:上面代码有以上面EXcel数据为例子的详细讲解,我就不再赘诉,很简单的思路。以原创 2024-03-14 16:55:04 · 7388 阅读 · 182 评论 -
SpringBoot+Ajax+redis实现隐藏重要接口地址
本篇文章主要讲诉使用SpringBoot项目配合Ajax和redis实现隐藏重要接口地址,这里我以隐藏秒杀地址为例。以上就是SpringBoot+Ajax实现隐藏重要接口地址的实现。原创 2024-03-08 14:08:12 · 3804 阅读 · 78 评论 -
【SpringBoot】秒杀业务:redis+拦截器+自定义注解+验证码简单实现限流
限流是秒杀业务最常用的手段。限流是从用户访问压力的角度来考虑如何应对系统故障。这里我是用限制访问接口次数(Redis+拦截器+自定义注解)和验证码的方式实现简单限流。含义:限制xx秒内最多请求xx次/*** @Author: Dragon_王* @Description: 通用接口限流,限制xx秒内最多请求次数//时间,单位秒 int second();//限制最大请求次数 int maxCount();//是否需要登录 boolean needLogin() default true;原创 2024-03-05 23:18:48 · 1933 阅读 · 43 评论 -
【Linux】一站式教会:Ubuntu(无UI界面)使用apache-jmeter进行压测
近期做个SpringBoot项目,打包在电脑的Ubuntu系统上运行,并在Ubuntu内使用Jmeter进行压测,如果大家同样有压测需求可以参考,避坑少走弯路;主要讲诉JDK安装(版本JDK19)、Jmeter(版本5.3)安装使用。以上就是Ubuntu(无UI界面)使用apache-jmeter进行压测的全部讲解。原创 2024-02-23 08:10:34 · 3718 阅读 · 73 评论 -
【MySQL】Navicat/SQLyog连接Ubuntu中的数据库(MySQL)
遇到一个Navicat/SQLyog连接Ubuntu中的数据库(MySQL)的报错:中文意思是不能在x.x.x.x(主机号)上连接mysql服务,这个报错号是10061。如果你遇到其他的可能也能用我的方法解决。以上就是Navicat/SQLyog连接Ubuntu中的数据库(MySQL)报错的解决。原创 2024-02-20 22:05:40 · 5719 阅读 · 96 评论 -
【SpringBoot】Validator组件+自定义约束注解实现手机号码校验和密码格式限制
SpringBoot项目实现Validator组件+自定义约束注解(自定义校验规则)@IsMobile校验手机号码以及密码格式限制。@Constraint注解是Java Bean Validation框架中的一个注解,用于自定义约束注解,即自定义校验规则。通过在自定义注解上添加@Constraint注解,可以将该注解标记为一个自定义约束注解。同时,需要指定一个实现了ConstraintValidator接口的验证器类,用于验证该注解所标记的字段或参数是否符合自定义的校验规则。原创 2024-02-13 09:53:20 · 4983 阅读 · 88 评论 -
【SpringBoot】Redis集中管理Session和自定义用户参数解决登录状态及校验问题
主要讲解:Redis集中管理Session存储用户登录信息,解决分布式Session问题;自定义用户参数配合MVC拦截器实现控制层入参前进行用户校验,解决每层用户接口都要做用户校验问题。/*** @Author: Dragon_王* @Description: 自定义用户参数* 获取用户是否登录*/@Component@Autowired@OverrideClass原创 2024-02-10 01:26:16 · 4176 阅读 · 76 评论 -
SpringBoot+随机盐值+双重MD5实现加密登录
SpringBoot+随机盐值+双重MD5实现加密登录。加盐(盐英文就是salt):在密码学中,是指通过在密码任意固定位置插入特定的字符串,让散列后的结果和使用原始密码的散列结果不相符,这种过程称之为”加盐“。MD5信息摘要算法(英语:MD5 Message-Digest Algorithm):一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。MD5由美国密码学家罗纳德·李维斯特(Ronald Linn Rivest)设计,于199原创 2024-02-06 23:58:44 · 3735 阅读 · 74 评论 -
Redis实现分布式锁
Redis实现简单分布式锁。在多线程环境中,如果多个线程同时访问共享资源(例如商品库存、外卖订单),会发生数据竞争,可能会导致出现脏数据或者系统问题,威胁到程序的正常运行。举个例子,假设现在有 100 个用户参与某个限时秒杀活动,每位用户限购 1 件商品,且商品的数量只有 3 个。如果不对共享资源进行互斥访问,就可能出现以下情况:线程 1、2、3 等多个线程同时进入抢购方法,每一个线程对应一个用户。原创 2023-11-29 10:59:21 · 950 阅读 · 0 评论 -
Redis实现分布式锁
Redis实现简单分布式锁。在多线程环境中,如果多个线程同时访问共享资源(例如商品库存、外卖订单),会发生数据竞争,可能会导致出现脏数据或者系统问题,威胁到程序的正常运行。举个例子,假设现在有 100 个用户参与某个限时秒杀活动,每位用户限购 1 件商品,且商品的数量只有 3 个。如果不对共享资源进行互斥访问,就可能出现以下情况:线程 1、2、3 等多个线程同时进入抢购方法,每一个线程对应一个用户。原创 2023-11-11 14:57:51 · 148 阅读 · 0 评论 -
Redis之缓存
本篇文章即将探索的问题(以黑马点评为辅助讲解,大家主要体会实现逻辑)使用redis缓存的原因数据库与缓存不一致问题三大缓存问题(缓存穿透、缓存雪崩、缓存击穿)。以上就是Redis缓存的详细讲解与实现。原创 2023-11-10 15:08:00 · 707 阅读 · 1 评论 -
短信登录实现(黑马点评为例)
短信登录核心知识首先黑马点评这个短信登录是一伪验证,即后台调用工具类随机生成六位数字。1.Redis代替session共享,满足多tomcat共享数据。2.登录拦截、线程隔离实现每个线程操控自己线程的数据与登录状态刷新问题解决。3.创建新对象解决隐藏用户敏感信息。以上就是短信登录的详细实现,细节满满。原创 2023-11-07 19:54:22 · 430 阅读 · 0 评论