- 博客(71)
- 收藏
- 关注
原创 奇安信代码扫描——路径遍历问题
路径遍历(Path Traversal)漏洞是一种常见的Web安全问题,它允许攻击者通过操纵文件路径访问不受限制的文件或目录。要理解这个问题及其检测原理,我们需要深入了解其产生的原因和检测机制。好了,上面就是那些官方之类的回答了,我之前也在各种网站上面查找解决这个 奇安信—路径遍历,就是为了过这个,试了很多方法,大部分是不太实用且麻烦的,后来经过多次尝试,找到了一个很简单的解决方法,就是借助hutool包下面的工具类。/ 这种类似参数 来访问系统上的任意文件或目录,这就是路径遍历问题出现的原因。
2025-01-13 09:55:57
1205
原创 postman 测试下载功能
然后回弹出如下下载框 但是他默认后缀是 .bin 需要改成我们需要的文件后缀 然后点击下载即可。测试下载工作 返回的乱码 需要手动点击 Save to a file。
2025-01-13 09:55:41
553
原创 Spring Boot、MyBatis、MyBatis-Plus 依赖版本对应关系总结
在使用 Spring Boot、MyBatis 和 MyBatis-Plus 时,确保它们的依赖版本兼容是项目正常运行的关键。版本不兼容可能会导致诸如未正确配置等错误。因此,合理选择各个依赖的版本尤为重要。以下是 Spring Boot 各个版本与 MyBatis 和 MyBatis-Plus 的版本对应关系总结。
2024-10-09 09:28:45
18333
4
原创 学习 PostgreSQL + Spring Boot 3 +mybatisplus整合过程中的报错记录
今天计划学习 PostgreSQL,并顺便尝试使用 Spring Boot 3.x 框架,打算整合 Spring Boot 3、PostgreSQL 和 MyBatis-Plus。整合后一直出现以下报错:去AI上面搜了讲的是或没有正确配置。搜了讲的是sqlSessionFactory 或 sqlSessionTemplate 没有正确配置 我看我的依赖什么的都没什么问题啊 就一直以为是postgresql整合的问题 就一直在弄这个 是不是脑回路很清奇!!弄了很久也没好 后面突然想到是不是springboo
2024-10-09 09:09:58
615
原创 URL 中的特殊字符进行编码和解码
功能将 URI 中的非法字符进行编码,保留 URL 中的合法字符,例如字母、数字、下划线、连字符和句点。;。使用场景编码整个 URI,使其成为一个符合规范的 URL。示例// 输出: http://example.com/path%20with%20spaces/index.html?使用可以将含有特殊字符的 URL 转换为合法的格式,在整个 URL 传输和处理过程中保持有效性。则能将编码后的 URL 恢复,确保正确的解析和显示。
2024-09-29 15:26:35
723
原创 websocket初识
WebSocket 是一种强大的通信协议,它通过减少通信的开销和延迟,实现了客户端和服务器的实时双向通信。对于需要高效实时数据传输的应用场景,如聊天、游戏、股票行情、协同办公等,WebSocket 是非常适合的选择。
2024-09-29 15:19:12
1508
原创 算法——二分查找
二分查找(Binary Search)是一种高效的查找算法,适用于。通过每次将查找范围缩小一半,能够快速找到目标值或确定目标值不存在。相比线性查找(O(n)),二分查找的时间复杂度为 O(log n),效率更高。
2024-09-29 14:37:06
981
原创 多线程学习
继承 Thread 类描述:创建一个类继承Thread,重写run()方法,使用start()方法启动线程。优点代码简单,易于理解。可以直接调用Thread类中的方法。缺点Java 是单继承的,不能继承其他类。示例// 线程执行的代码线程池是一种并发编程的设计模式,用于管理和复用多个线程。线程池会预先创建一定数量的线程,避免在高并发环境下频繁创建和销毁线程,从而减少资源消耗和提升性能。除了使用Executors,我们还可以通过2, // 核心线程数5, // 最大线程数。
2024-09-27 22:43:27
1536
原创 算法——冒泡排序
冒泡排序每次遍历会将最大(或最小)元素冒泡到正确位置。对每一趟遍历,剩余未排序的部分继续进行比较和交换。可以通过优化,避免无效的排序操作,减少时间复杂度。尽管冒泡排序的思想非常直观,适合教学和小规模数据排序,但由于其时间复杂度较高,在实际应用中通常不适用于大规模数据的排序。
2024-09-27 22:35:26
764
原创 云服务器docker中Hbase整合java-api需要放行的接口
16020:HBase RegionServer 通信端口(Java API 访问 HBase 的必需端口)。2181:Zookeeper 客户端端口(HBase 集群元数据管理)。根据需求,其他端口(如管理 Web UI、Thrift、REST)可以按需放行。
2024-09-18 23:19:05
1255
原创 html页面整合vue2或vue3
'欢迎使用 Vue.js!'欢迎使用 Vue.js!'欢迎使用 Vue 3!'欢迎使用 Vue 3!'Vue 实例已创建!'Vue 实例已创建!'Vue 实例已挂载!'Vue 实例已挂载!在 HTML 文件的。在 HTML 文件的。
2024-09-13 17:28:17
2122
1
原创 树形结构构建的两种方式
选择递归:如果数据层次结构清晰且层次较少,递归的实现会更简洁直观,易于维护。选择循环:当面对大数据量和复杂层次的情况时,循环构建方法更为稳定和高效,避免了递归的局限性。两种方法各有优缺点,选择时应根据实际数据规模、层次深度和对性能的需求综合考虑。
2024-09-13 17:16:05
1491
原创 Vue.js 中 ref 和 reactive 的区别及用法
ref适用于需要频繁更改整个值的场景,因为它可以直接赋值新的数组或对象。reactive适用于需要深度响应的对象或数组,在修改其内部属性或元素时能保持响应性。不能直接赋值数组:reactive 创建的是一个深度响应的对象或数组,Vue 只跟踪创建时的对象引用。如果直接重新赋值一个新的对象或数组,Vue 将无法跟踪新的引用,因为新的引用不会被自动转换为响应式对象。
2024-06-29 12:34:11
634
原创 记录springCloud项目报错Description:Parameter 0 of method ribbonServerList in com.alibaba.cloud.nacos.rib
创建springcloud项目之后 然后就正常启动 突然报错我曾咨询AI,他说让我检查关于检查依赖项和项目版本是否兼容的问题,但未能解决我的困惑。尽管按照此建议操作,我的问题依然存在。偶然间,我看到有人提到可能是启动类位置的问题。于是,我将启动类放入更深一级的目录,再次启动,问题便得以解决。虽然问题解决了,但是我百思不得其解,为什么这样就好了,然后去网上查询资料,发下如下解释,主要是因为springboot项目的自动扫描原因。注解默认会扫描启动类所在包及其子包。当你将启动类移动到更深层次的包下,例如。
2024-06-29 09:51:43
678
原创 Springboot整合kafka简单使用
Kafka 是一个开源的分布式流处理平台,最初由 LinkedIn 开发并贡献给 Apache 软件基金会。它设计用于构建高性能、持久性、可伸缩和容错的实时数据管道和流处理应用程序。发布-订阅模型:Kafka 使用发布-订阅模型,其中消息生产者将消息发布到主题(topic),而消息消费者从主题订阅消息。这种模型可以支持多个消费者同时消费消息,并且具有良好的扩展性。主题(Topic):主题是消息的逻辑分类,相当于一个消息队列。消息被发布到主题,并且消费者从主题订阅消息。分区(Partition)
2024-06-02 19:29:15
3196
2
原创 Linux虚拟机设置定时任务(crontab)
环境变量来正确运行,你可以在Cron任务中设置这些环境变量,然后再执行Java程序。如果你希望在Cron任务中设置Java环境变量,你可以在Cron任务的脚本中直接设置,或者创建一个单独的环境变量设置脚本,然后在Cron任务中引用它。文件中定义的任务遵循一种特定的格式,其中包括了执行时间规则以及要执行的命令或脚本。如果脚本依赖于特定的环境变量,你需要在Cron任务中手动设置这些环境变量。如果你的脚本依赖于特定的环境变量,特别是针对Java应用程序,你可以在Cron任务中手动设置这些环境变量。
2024-06-02 15:25:33
1181
1
原创 OpenFeign+Hystrix 熔断器
OpenFeign是一个基于Java的声明式HTTP客户端,主要用于简化编写基于RESTful服务的客户端代码。它允许开发人员通过接口和注解的方式来定义和描述RESTful服务的调用,从而避免了手动编写大量的HTTP请求和参数处理代码。声明式RESTful服务调用:通过定义接口和使用注解,开发人员可以方便地描述RESTful服务的调用方式,包括URL、HTTP方法、请求参数等。
2024-05-31 11:24:25
900
原创 RabbitMQ(Direct 订阅模型-路由模式)的使用
订阅模型-路由模式,此时生产者发送消息时需要指定 RoutingKey,即路由 Key,Exchange 接收到消息时转发到与 RoutingKey 相匹配的队列中。 direct的意思是直接的,direct类型的Exchange会将消息转发到指定Routing key的Queue上,Routing key的解析规则为精确匹配。也就是只有当producer发送的消息的Routing key与某个Binding key相等时,消息才会被分发到对应的Queue上。
2024-05-31 11:07:39
1373
原创 初识MyBaitsPlus
MyBatis-Plus是一个基于MyBatis的增强工具,旨在简化MyBatis的开发,提高生产效率。它提供了一系列功能,包括CRUD操作的自动生成、复杂查询的简化配置、代码生成器、分页插件等。
2024-05-27 18:48:43
675
原创 StringRedisTemplate使用
StringRedisTemplate` 是 Spring Framework 提供的一个用于操作 Redis 数据库中 String 类型数据的模板类。它是基于 RedisTemplate 实现的,专门用于处理 Redis 中的 String 类型数据,提供了一系列简化操作的方法。在 Spring Data Redis 中,
2024-05-12 20:16:15
4915
1
原创 jdk安装使用(Linux)
source`命令用于执行指定文件中的命令 也可以用来重新加载Shell的配置文件,从而刷新当前Shell的环境变量和其他配置。:使用Maven或Gradle等构建工具,在项目根目录下执行构建命令,将Spring Boot项目打包成可执行的JAR文件。包含了一些全局的环境变量的设置和一些全局生效的命令。无论你选择哪种方法,都可以成功停止在Linux服务器上运行的Spring Boot应用程序。:将生成的JAR文件上传到你的Linux服务器上,可以使用FTP、SCP等工具进行上传。
2024-05-12 15:47:00
600
1
原创 linux—redis集群搭建(主从哨兵)
配置哨兵的作用是确保 Redis 系统的高可用性。Redis Sentinel(哨兵)是一个用于监控和管理 Redis 集群的自动化系统,它可以检测 Redis 主节点和从节点的故障,并在需要时进行自动故障转移和节点恢复。而有三个或更多的哨兵节点可以确保在大多数节点达成一致的情况下进行投票,增加了投票的可靠性。:多个哨兵节点可以分布在不同的服务器上,从而可以更好地监控 Redis 集群的各个节点。到了这里 就算是已经配置好了一个最基础的配置了 可以开启一个简单的redis服务了。
2024-04-24 16:35:58
1424
2
原创 Apache POI 设置样式
当使用 Apache POI 设置样式时,通常需要创建 CellStyle 对象,并设置相关的样式属性,然后将这些样式应用到单元格中。
2024-03-28 19:28:29
1672
原创 Hutool工具包中的Validator类数据校验
Hutool中的Validator类中的方法都是静态方法,这意味着你可以直接通过类名调用这些方法,而不需要实例化Validator类的对象。通过静态方法提供数据验证功能,可以简化代码,并且更方便地在项目中使用这些验证方法,无需创建额外的对象实例。类,该类提供了一些常用的验证方法,用于校验数据的合法性。通过引入这个类,你可以使用其中定义的各种验证方法来检查数据是否符合特定的规则,例如验证手机号码格式、邮箱格式、身份证号码格式等。类提供的方法简化数据验证的过程,增强代码的可读性和健壮性。
2024-03-25 14:51:09
1787
原创 AES 和 MD5
加密过程中,原始数据以块的方式进行处理,并通过一系列轮数的替换和置换操作来加密数据。MD5(Message-Digest Algorithm 5):MD5 是一种哈希函数,用于将任意长度的数据转换成固定长度的哈希值(通常是 128 比特)。MD5 算法生成的哈希值通常用于校验数据完整性,但由于其存在碰撞攻击的漏洞,不再被推荐用于安全性要求较高的场景。MD5 哈希算法主要用于快速生成数据的校验和,而不适合作为单独的加密算法使用,MD5加密也是不可逆的。下面来说说这两个初步实现。
2024-02-25 19:02:17
760
原创 验证码的简易实现
6.后端开始验证 因为创建验证码时将验证码的值存到了session作用域 所有可以直接获取验证。 这样就实现了简易的验证码图案的创建及使用。1.创建一个新的Java项目,并设置好项目的基本配置。5.输入验证码提交到后端登录验证。
2024-02-25 18:40:16
385
原创 解决SpringBoot 测试类无法自动注入@Autowired的问题
SpringRunner 是 Spring TestContext Framework 的一部分,它提供了整合 Spring 和 JUnit 的功能。是一个 Spring Boot 注解,用于指定 Spring Boot 应用程序的入口类。综上所述,使用这两个注解可以实现在测试环境中加载完整的 Spring ApplicationContext,并使用 SpringRunner 来运行测试。通过指定主配置类,Spring Boot 在启动测试时会加载该类及其相关的配置文件,创建应用程序的上下文环境。
2024-01-25 14:24:06
1220
原创 在使用springboot框架式的的script无法通过${}来获取值
今天使用springboot框架做项目,想着来实现一下搜索的下拉框回显功能,然后就一直在报错误,关键是报的错误牛头不对马嘴,检查了一下后端代码,发现没什么问题,就把目光聚焦了.jsp页面的代码。一直显示上面少个括号 ,检查了很久 ,没看出来哪里有问题 把我上面的代码注释掉有全部好了,慢慢检查 然后去网搜索 终于找到了原因 --${}没办法获取到值 然后继续推导 发现是引号的原因。表达式时,JavaScript 引擎会自动将包含该表达式的字符串标识为模板字符串。对于模板字符串,你需要使用反引号(
2024-01-24 16:31:56
754
原创 scrpit中的模板字符串
模板字符串(Template Strings)是 JavaScript 的一种特殊字符串语法,它允许你在字符串中插入表达式、变量或函数调用,并以更简洁的方式构建字符串。模板字符串使用反引号(同时,在模板字符串中使用反引号包裹字符串,可以避免与普通字符串中使用单引号或双引号时可能产生的转义问题。标签模板字符串:模板字符串可以通过标签函数进行处理,以实现更高级的字符串操作。套模板字符串:模板字符串可以嵌套在其他模板字符串中,形成复杂的字符串结构。多行字符串:使用模板字符串可以轻松创建多行字符串,无需使用。
2024-01-24 16:30:48
364
原创 Spring boot 常见注解
Spring Boot是一个基于Spring框架的快速开发框架,它通过自动化配置和约定优于配置的原则,简化了Spring应用程序的开发过程。@GetMapping、@PostMapping、@PutMapping、@DeleteMapping:分别对应GET、POST、PUT、DELETE方法的请求。@SpringBootApplication:标记一个主应用程序类,表示这是一个 Spring Boot 应用程序的入口点。@Component:将一个类标记为组件,使它成为Spring容器的一个Bean。
2024-01-17 19:41:55
787
2
原创 myBatis框架中resultMap的简单使用
简单来讲:先执行list方法,然后因为返回的是resultMap="stuMap" 然后他就会去resultMap找"stuMap",然后执行里面的命令,命令里面有select="getStuMotion" column="sid"> 他就去查找select方法id为getStuMotion的方法,然后传参为sid字段。最后,我们通过 list 标签指定查询 stu 表的 SQL 语句,并将查询结果映射到 "stuMap" ResultMap 中。我们可以指定列名、属性名、Java类型等信息来完成映射。
2024-01-17 16:23:22
551
原创 PageHelper分页功能的简单实现
其中,getPageNum()、getPageSize()、getTotal()、getPages()和getList()方法是最常用的,用于获取分页后的查询结果相关信息和数据列表;除了以上常用的方法外,PageInfo类还提供了一些其他的方法,比如setOrderBy()、setOrderByOnly()、setReasonable()等,用于设置分页排序、分页合理化处理等。使用PageHelper进行分页,首先需要在项目中引入PageHelper的依赖,然后在代码中配置分页参数,并调用分页查询的方法。
2024-01-15 20:18:40
734
原创 Maven和MyBatis框架简单实现数据库交互
MyBatis是一种基于Java语言的持久层框架,它的主要目的是简化与数据库的交互过程。总的来说,SqlSessionFactoryBuilder 类是 MyBatis 中用来创建 SqlSessionFactory 实例的一个重要类,而 SqlSessionFactory 实例则是连接 MyBatis 和数据库的重要桥梁。总的来说,MyBatis是一款非常优秀的持久层框架,它的设计理念简单而明确,易于上手,同时又具备很高的扩展性和灵活性,可以满足不同应用场景下的需求。
2024-01-11 20:03:16
1361
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人