自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(103)
  • 收藏
  • 关注

原创 docker 安装可视化工具 Portainer 以及 汉化

【代码】docker 安装可视化工具 Protainer。

2023-12-27 23:16:05 5515 2

原创 docker 安装Redis (全网最详细:附带配置文件)

截止目前,Redis 的最新稳定版本是 6.2.6。这个版本在可读性、性能和稳定性方面进行了改进,并增加了一些新的命令和功能。

2023-12-05 15:10:58 12979 11

原创 docker 安装 mysql5.7(全网最详细)

安装,以MySql5.7版本为例子。docker默认的仓库比较慢,可以参考以下文章 第五标题 设置阿里云镜像仓库。

2023-12-02 23:56:39 5398

原创 SpringBoot整合openApi

使用 Javadoc 来生成 OpenAPI 文档可能不如直接使用 OpenAPI 注解那么直观,但它仍然是一个可行的选择。如果你的项目已经有了大量的 Javadoc 文档,并且不想重新编写注解,那么这种方法可以为你节省一些工作量。),这些标记并不是标准的 Javadoc,而是某些工具(如 Swagger Javadoc)可能识别的格式。你需要根据实际使用的工具来调整 Javadoc 的格式。首先,你需要在你的项目中添加相应的依赖。请注意,上面的 Javadoc 示例包含了伪的 API 文档标记(如。

2024-09-06 11:32:49 121

原创 RedissonClient 分布式队列工具类

QueueUtils.addQueueObject 方法添加数据进入队列 test。如上代码,删除时间为:2024-09-04 10:40:53 这条数据,剩下一条。getQueueObject 获取导数据,容量会为0.后面无法添加。每次执行添加操作时候,订阅队列都会获取到数据。底层逻辑,如果取出一个数据,容量则会加 1。如图销毁队列后,刷新,则提示键不存在。获取上面添加的 test队列 数据。一条被获取,剩下2条为后添加数据。获取队列数据,会同时改变容量大小。如果未设置容量,添加失败。

2024-09-06 11:31:33 938

原创 【无标题】XSS安全防护:responseBody (输入流可重复读) 配置

是 RepeatedlyRequestWrapper 类型,则获取上面封账body信息。

2024-09-02 15:18:20 296

原创 XXS 安全防护:拦截器+注解实现校验

XSS(跨站脚本)攻击是一种网络安全威胁,允许攻击者注入恶意脚本到看似安全的网站。当用户浏览这些被注入恶意代码的网页时,恶意脚本会在用户的浏览器环境中执行,这可能导致多种安全问题,如窃取敏感数据、劫持用户会话等。这些攻击利用了应用程序对用户输入处理不当的问题。预防方法包括输入验证、输出编码等。

2024-09-02 10:31:30 165

原创 Undertow 性能、配置

如果你需要一个成熟稳定且易于使用的容器,Tomcat是一个很好的选择。如果你希望使用一个轻量级且高度可定制的容器,Jetty可能是你的首选。如果你追求高性能和轻量化,并且希望支持最新的Web技术,如HTTP/2,那么Undertow会是一个理想的选择。设置 Undertow 的 websocket 缓冲池/*** 设置 Undertow 的 websocket 缓冲池*/@Override// 默认不直接分配内存 如果项目中使用了 websocket 建议直接分配。

2024-08-28 17:12:04 191

原创 JMeter 工具安装以及简单使用

傻瓜式JMeter下载和环境配置及永久汉化-CSDN博客。

2024-08-28 17:11:42 256

原创 SqlUtils 工具类

作用:校验sql注入风险。

2024-08-21 17:08:10 359

原创 AddressUtils 、RegionUtils IP地址工具类

【代码】AddressUtils 、RegionUtils IP地址工具类。

2024-08-21 17:08:02 197

原创 TreeUtils 树工具类

如图:部门树数据 ,树形的基础数据。

2024-08-20 16:03:05 331

原创 ReflectUtils 反射工具类

重写object 的toString 方法,打印参数。获取无参构造,有参构造,修改成员变量属性。也会打印object自带的方法。调用了toString。

2024-08-20 16:02:20 376

原创 StreamUtils 流处理工具

String作为key并将 value值,由 TestDemo转换为了TestDemoVo对象@Override},@Override打印结果:value由 TestDemo转换为了TestDemoVo.class。

2024-08-14 11:07:16 478

原创 StringUtils 字符串工具

继承了org.apache.commons.lang3.StringUtils 的类。

2024-08-14 11:07:10 141

原创 RuoYi-Vue-Plus (全网最详细 :监控中心 Spring Actuator 配置、接入项目)

Actuator为Spring Boot应用提供了生产级别的监控功能,如健康检查、审计、指标收集、HTTP跟踪等。它通过HTTP和JMX暴露应用程序的内部信息,使得这些信息可以被外部系统访问和利用。此外,Actuator还能与多种外部监控系统(如Prometheus、Graphite、DataDog等)集成,为开发者提供统一的监控和管理界面。

2024-08-11 17:04:47 323

原创 SpringUtils 工具类

如代码 TestDemo 类,通过@Bean注解注册2个bean。比如这种写法每次都会直接进入test7方法,而不会去命中缓存。每次请求都不会走上面缓存注解,直接进入test7方法。注册bean后,打印成功。注销之后打印未获取到bean。比如我们打印配置文件中的端口号。结果:test1被调用。

2024-08-11 17:04:09 469

原创 RuoYi-Vue-Plus (XXL-JOB任务调度中心一:讲解以及启动)

任务基本信息表存储任务的基本信息,比如任务名、任务描述、任务执行类、Cron 表达式等。:执行器组信息表用于存储执行器组的信息,包括执行器的名称、地址等。:执行器详细信息表记录执行器的详细信息,例如执行器的 IP 地址、执行器名称等。:任务执行日志表存储任务执行的日志信息,包括执行状态、开始时间、结束时间等。:执行结果报告。统计任务执行的结果报告,用于展示任务执行情况的统计信息。:并发锁信息表用于保证并发调度时的唯一性,防止多个调度实例同时执行同一个任务。

2024-08-05 17:28:34 831

原创 RuoYi-Vue-Plus (XXL-JOB任务调度中心二:配置管理与定时任务编写、执行策略、命令行任务、邮件报警等等

引入依赖xxl-job核心包、已经公共common包。

2024-08-05 17:27:48 991

原创 RuoYi-Vue-Plus (多数据源注解使用、【手动、拦截器】切换数据源)

[PLUS]结束请求 => URL[GET /testDynamic2],耗时:[33]毫秒。- [PLUS]结束请求 => URL[GET /testDynamic2],耗时:[31]毫秒。DynamicDataSourceContextHolder 工具类。切换数据源:master----------------------切换数据源:slave----------------------切换数据源:slave----------------------已经设置数据源,打印当前数据源:slave。

2024-07-26 17:12:01 1041

原创 RuoYi-Vue-Plus(动态添加移除数据源)

运行结果:add a datasource named [dynamic] success 添加成功。

2024-07-26 17:11:54 131

原创 RuoYi-Vue-Plus (HiKariCp JDBC连接池)

是一个高性能的 JDBC 连接池实现。它以其的特点而广受 Java 开发者的青睐。:HikariCP 通过使用低开销的并发访问机制、有效地利用线程池、采用轻量级的对象池等技术,确保在高负载情况下依然能够保持稳定的性能表现。据官方数据,在并发场景下,HikariCP 的性能优于其他许多连接池。:HikariCP 的代码精简、依赖少,不依赖于其他第三方库,因此具有较小的内存占用和较低的启动时间。这使得它非常适合于内存有限的环境或者需要快速启动的场景。

2024-07-23 16:31:16 99

原创 RuoYi-Vue-Plus (多数据源配置)

ruoyi-common 下面引入依赖父pom.xml 下面,控制版本。

2024-07-23 16:30:12 367

原创 RuoYi-Vue-Plus (Velocity 代码生成使用以及代码逻辑)

1-配置文件: src/main/resources/generator.yml2-配置生成表的基础信息:包路径 前缀规则等配置类:GenConfig路径 : src/main/java/com/ruoyi/generator/config/GenConfig.java。

2024-07-18 16:53:15 818

原创 RuoYi-Vue-Plus (代码生成、Velocity模板引擎)

JSP、Freemarker、Velocity并称3大模版技术下面是JSPFreemarker和Velocity#set#if这个表格提供了一个简要的对比,但请注意,每个技术都有其独特的优点和适用场景。在选择使用哪种技术时,应考虑到项目的具体需求、团队的技术栈和偏好,以及技术的长期维护性和社区支持等因素。

2024-06-27 16:32:52 449

原创 CompletableFuture 场景DEMO代码展示

自定义线程池好处参考:线程是稀缺资源,如果被无限制的创建,不 仅会消耗系统资源,还会降低系统的稳定性,因此Java中提供线程池对线程进行统一分配、 调优和监控的框架。

2024-06-25 12:43:29 275

原创 RuoYi-Vue-Plus (若依上传文件配置、systemApplicationRunner 初始化配置、el实现上传文件及图片组件、阿里云OSS上传文件)

路径:src\views\system\oss\index.vue上传文件路径: src\components\FileUpload\index.vue实现技术:el-upload 实现该上传属性,具体api查看element官网选取文件

2024-05-25 15:39:12 572 1

原创 RuoYi-Vue-Plus (@Async注解的异步配置)

JDK动态代理和CGLIB动态代理是两种不同的方式来实现代理模式。JDK动态代理是基于而CGLIB动态代理则是。JDK动态代理要求CGLIB动态代理则可以。

2024-05-20 16:11:11 309

原创 RuoYi-Vue-Plus (线程池配置ThreadPoolConfig、ThreadPoolTaskExecutor )

线程池配置,策略等。可以看我的以下文章异步、线程池、以及CompletableFuture 组合式异步编排_completablefuture设置线程池-CSDN博客。

2024-05-18 14:22:11 425

原创 RuoYi-Vue-Plus(SpringEvent 事件监听、@Log日志注解实现)

上下文监事件是同步的,如果EventListen 中报错则会阻塞,不继续执行。结果:XNIO-1 task-1 表示线程号,可以看到都在同一个线程。

2024-05-18 11:08:31 224

原创 RuoYi-Vue-Plus (Logback 和 logback-plus.xml 、p6spy)

appender 定义日志输出(名称 路径 级别 等等,具体使用如下注解:)

2024-05-14 16:56:40 320

原创 RuoYi-Vue-Plus (Echarts 图表)

官网地址:目前echarts以及贡献给Apacheecharts配置项手册。

2024-05-10 12:02:38 420

原创 RuoYi-Vue-Plus (SpringCache、CacheManager、@Cacheable、缓存雪崩、击穿、穿透、CacheUtils 缓存工具类)

*** 2-自定义缓存管理器 整合spring-cache*/@Bean自定义 管理器PlusSpringCacheManager,实现CacheManager 接口,基于redssion操作缓存/***//*** * 修改 RedissonSpringCacheManager 源码* 重写 cacheName 处理方法 支持多参数*///是否自动配置name//是否允许null//事务提交之后执行// 常用缓存配置 ttl;

2024-05-09 15:28:12 1308

原创 RuoYi-Vue-Plus (EasyExcel 注解、列表填充、用户管理导出)

*** 我想所有的 字符串起前面加上"自定义:"三个字*/@ExcelProperty(value = "字符串标题", converter = CustomStringStringConverter.class)/*** 我想写到excel 用年月日的格式*/@DateTimeFormat("yyyy年MM月dd日HH时mm分ss秒")@ExcelProperty("日期标题")/*** 我想写到excel 用百分比表示*/

2024-05-06 16:53:36 342

原创 RuoYi-Vue-Plus (SPEL 表达式)

PlusDataPermissionHandler 拦截器中定义了解析器:buildDataFilter 方法中根据注解的key value来进行SPEL解析:key作为占位符,value 设置进原生sql。

2024-04-28 11:02:25 502

原创 RuoYi-Vue-Plus (角色部门-数据权限 @DataPermission使用、自定义数据权限、数据权限拦截 、处理器解读)

权限范围五个全部权限:crud全部数据权限自定义权限:对选择的部门有数据权限本部门及以下:本部门及以下子部门数据权限仅本人数据权限: 只能修改自己数据后端代码注意点:比如上面的部门角色控制,是根据 部门 id 和 用户id 控制对数据的操作权限作用在方法上作用在类上})实际代码展示})。。。。。。省里其他代码前置页面上加上自定义DEMO 权限的选项,自行找页面1-DataScopeType.java 中加入DEMO判断/*** 自定义demo* */

2024-04-25 10:51:19 1673

原创 RuoYi-Vue-Plus (SaToken 注解鉴权)

请注意:此注解的忽略效果只针对 SaInterceptor拦截器 和 AOP注解鉴权 生效,对自定义拦截器与过滤器不生效。2- SaManager.getStpLogic(checkLogin.type(), false) 获取到。策略类中 SaManager.getStpLogic(checkLogin.type(), false)实现类位置: cn.dev33.satoken.interceptor.SaInterceptor。调用了checkByAnnotation 方法,进行匹配角色:如下。

2024-04-22 15:39:12 1868

原创 RuoYi-Vue-Plus (系统菜单路由获取、路由生成逻辑、前端按钮控制、自定义权限角色组件)

getRouters 方法位于 com.ruoyi.web.controller.system.SysLoginController类中,作用:根据角色获取菜单返回新构建,VO菜单集合逻辑。

2024-04-16 17:14:33 432

原创 RuoYi-Vue-Plus (时间统计拦截器、获取用户信息、全局异常处理)

类位置:com.ruoyi.framework.web.exception.GlobalExceptionHandler。类位置:com.ruoyi.web.controller.system.SysLoginController。类位置:com.ruoyi.web.controller.system.SysLoginController。标注在方法上,当我们在系统中抛出 NotPermissionException异常,就会被标注的方法拦截。的功能,通常用于定义全局的异常处理程序和响应结果处理程序。

2024-04-15 09:52:27 378

原创 RuoYi-Vue-Plus (LoginHelper 用户管理工具类)

1-loginByDevice 方法(重点)

2024-03-29 17:28:41 303

AddressUtils 、RegionUtils IP地址工具类

AddressUtils 、RegionUtils IP地址工具类

2024-08-21

StringUtils 字符串工具

StringUtils 字符串工具

2024-08-14

RuoYi-Vue-Plus (任务调度中心 XXL-JOB)

RuoYi-Vue-Plus (任务调度中心 XXL-JOB)

2024-08-01

OssClient 代码

OssClient 代码

2024-05-24

OssClient 代码

OssClient 代码

2024-05-20

logback-plus.xml

logback-plus.xml

2024-05-14

Docker (将jar保部署到容器上) -day 05

jar文件

2023-12-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除