- 博客(463)
- 收藏
- 关注
原创 【MySQL】 穿透学习数据库理论与知识剖析
mysql它是数据库服务的客户端mysqld它是数据库服务的服务器端mysql本质:基于C(mysql)S(mysqld)模式的一种网络服务。mysql是一套给我们提供数据存取得服务的网络程序。数据库一般指的是, 在磁盘或者内存中存储的特定结构组织的数据 – 将来在磁盘上存储的一套数据库方案。数据库服务 – mysqld。一般的文件给我们确实提供了数据的存储功能, 但是数据并没有给我们提供非常好的数据管理能力。数据库本质:对数据内容存储的一套解决方案。
2025-03-22 15:34:54
614
原创 Tomcat异常日志中文乱码怎么解决
因为用的是JSP这种远古语言,我怀疑就是在Java捕获异常并抛出时,抛出的那段文本的编码不对,但是我现在没时间去找具体方法去看这段异常捕获后抛出的底层。Tomcat Localhost日志会提示具体报错点,但是日志在输出具体出错的位置时,还是会显示中文乱码。一个是服务器日志,一个是Tomcat Localhost日志,一个是Tomcat Catalina日志,1、设置IDEA全局和项目文件编码都为UTF-8------没用。尽管现在看日志已经全是中文了,但是当页面报错时,就像这样。IDEA报错日志像这样。
2025-03-22 02:47:59
266
原创 SpringSecurity相关jar包的介绍
Spring Security是spring采用AOP思想,基于servlet过滤器实现的安全框架。它提供了完善的认证机制和方法级的 授权功能。是一款非常优秀的权限管理框架。Spring Security主要jar包功能介绍。
2025-03-22 01:11:52
382
原创 SpringBoot中Get请求和POST请求接收参数详解
参数用 @RequestParam 标注,使用value属性指定参数名,required属性表示这个参数是否必传。参数用 @RequestParam 标注,使用value属性指定参数名,required属性表示这个参数是否必传。直接以实体类可以接收param、form-data、 x-www-form-urlencoded 提交的参数。注意:SpringBoot 接收集合参数,必须用 @RequestParam 注解声明!这种方式一般适用参数比较少的情况,并且前后端参数名称必须保持一致。
2025-03-10 23:46:59
637
原创 Spring Boot项目开发常见问题及解决方案(上)
自己写了配置类,想把配置文件里的属性注入到类中使用,却发现属性值始终为null或者不符合预期,这往往是配置类编写或者属性注入的方式不对。解决方案: 确保配置类上添加了 @Configuration 注解,表明这是一个配置类,并且使用 @ConfigurationProperties 注解来绑定配置文件中的属性。
2025-03-10 17:47:24
974
原创 PHP For 循环
在探讨PHP的高级编程技巧时,嵌套循环无疑是一个值得关注的重要主题。嵌套循环指的是在一个循环体内嵌套另一个循环,这种结构在处理多维数组或执行复杂的迭代任务时特别有效。因此,在处理大规模数据时,应当谨慎使用嵌套循环,并考虑采用更高效的算法或数据结构。在PHP的for循环中,多重初始化和更新是一种高级技巧,允许同时控制多个变量的变化。在探讨PHP中的for循环应用时,计数循环无疑是最基本也是最常见的使用场景之一。通过合理使用嵌套循环,开发者可以有效地处理复杂的多维数据结构,同时保持代码的清晰性和可维护性。
2025-03-07 23:12:07
946
原创 MySQL 的mysql_secure_installation安全脚本执行过程介绍
1.设置 MySQL root 用户密码。2.删除匿名用户。3.禁止 root 用户远程登录。4.删除测试数据库。5.重新加载权限表。
2025-03-05 18:05:29
724
原创 Java面试题总结 - Java集合篇(附答案)
这样一来,当集合添加新的元素时,先调用这个元素的hashcode()方法,就一下子能定位到他应该放置的物理位置上。(2)List特点:元素有放入顺序,元素可重复 ,Set特点:元素无放入顺序,元素不可重复,重复元素会覆盖掉,(元素虽然无放入顺序,但是元素在set中的位置是有该元素的HashCode决定的,其位置其实是固定的,加入Set 的Object必须定义equals()方法 ,另外list支持for循环,也就是通过下标来遍历,也可以用迭代器,但是set只能用迭代,因为他无序,无法用下标来取得想要的值。
2025-03-05 16:41:11
659
原创 Java最新面试题100道,包含答案示例(41-50题)
答:Java中的equals()方法用于判断两个对象是否相等,而运算符用于判断两个对象的引用是否相等。答:Java中的final关键字可以用于变量、方法和类中,具有不同的作用。答:Java中的静态变量属于类而不属于任何一个实例,它被所有该类的对象共享。通常来讲,静态变量可以用来表示类级别的属性,而实例变量则用于存储对象特有的数据。答:Java中的反射是一种机制,允许程序在运行时动态地获取、操作类的属性和方法等信息。需要指定线程池的核心线程数、最大线程数、线程空闲时间等参数,并将待执行的任务提交到线程池中。
2025-03-05 01:32:19
294
原创 docker中配置redis
4、下载redis,解压,复制redis.conf到你上一步建立的目录下,/home/docker-data-redis。3、创建目录,在你的宿主机,(我是在虚机中建的centos7)为了给redis配置文件使用。docker pull redis(默认你的docker中没有redis)6.1、 注释掉127.0.0.1,允许远程访问。5、解压后,将redis.conf上传。6.2、守护线程启动,默认为no。9、操作完后,就可以愉快的玩耍了。2、查看redis是否拉取成功。6.3、设置redis访问密码。
2025-03-05 00:14:44
284
原创 鸿蒙NEXT(五):鸿蒙版React Native架构浅析
本文详细介绍了鸿蒙版 React Native 架构。包括按功能划分的架构组成,如 RN 应用代码、库代码、JSI、React Common、OpenHarmony 适配代码及 OS 代码等。还阐述了 Fabric、TurboModule、线程模型、命令式组件、启动流程等方面内容。启动流程分为 RN 容器创建、Worker 线程启动、NAPI 方法初始化、RN 实例创建及加载 bundle 等阶段。整体架构复杂且功能明确,为开发者提供了在鸿蒙平台上使用 React Native 的技术支持。
2025-03-03 12:09:59
632
原创 存储过程(SQL)
所以要事先用 “DELIMITER //” 声明当前段分隔符,让编译器把两个 “//” 之间的内容当做存储过程的代码,不会执行这些代码。存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它。内部变量在其作用域范围内享有更高的优先权,当执行到end时,内部变量消失,不再可见了,在存储过程外再也找不到这个内部变量,但是可以通过out参数或者将其值指派给会话变量来保存其值。
2025-03-02 21:07:43
415
原创 可造成敏感信息泄露!Spring Boot之Actuator信息泄露漏洞三种利用方式总结
Spring Boot是一个基于Spring的套件,它提供了一个即开即用的应用程序架构,可以简化Spring应用的创建及部署流程,帮助开发者更轻松快捷地构建出企业及应用。Spring Boot项目中Actuator模块提供了众多HTTP接口端点(Endpoint),来提供应用程序运行时的内部状态信息。可以使用http、jmx、ssh、telnet等来管理和监控应用。包括应用的审计(Auditing)、健康(health)状态信息、数据采集(metrics gathering)统计等监控运维的功能。
2025-03-02 19:29:00
845
原创 东方财富股吧发帖与评论爬虫
该项目使用 selenium 模拟用户操作抓取股吧发帖和评论数据(允许多线程同时抓取多支股票的相关信息),并将抓取到的数据储存到 MongoDB 中,方便后续使用。附加说明:非科班新手第一次写爬虫,代码效率一般(比如未使用 redis 做消息队列等等),适合新手入门或小规模爬取。以后若有能力与时间会对代码进行迭代维护,提高爬取效率,同时欢迎各位大佬提issue。main.py: 主程序,直接在里面调用函数即可开始抓取数据。crawler.py: 爬虫主体,包含了和两个类,负责抓取帖子和评论的信息。
2025-03-01 15:39:26
1648
1
原创 【JAVA进阶篇教学】第十一篇:Java中ReentrantLock锁讲解
博主打算从0-1讲解下篇教学,今天教学第十篇:Java中ReentrantLock锁讲解。在Java并发编程中,保证多线程环境下的数据安全是至关重要的。ReentrantLock 是Java中用于实现线程安全的一种锁机制。本篇博客将深入介绍 ReentrantLock 的原理、详细说明,并通过案例演示线程不安全情况以及如何使用 ReentrantLock 实现线程安全。
2025-02-28 22:02:59
664
原创 sql中的regexp与like区别
其中,column_name是要进行匹配的列名,table_name是要查询的表名,pattern是要匹配的正则表达式模式。:灵活性强,能进行复杂模式匹配(如开头、结尾、字符集等)。The Begin?中第二个字符是 “a” 的所有行,你可以使用。:性能较好,适合简单模式匹配(如包含某字符)。(代表任意数量的字符,包括零个字符)和。例如,在 MySQL 中,可以使用。:高级字符串匹配,使用正则表达式。:简单字符串匹配,使用通配符。(代表一个任意字符)。
2025-02-28 13:00:12
754
原创 SpringCloud-使用FFmpeg对视频压缩处理
FFmpeg是一个可以用来录制、转换和流传输音视频的开源工具。它支持几乎所有的音视频格式,并提供了非常强大的编码、解码、转码、复用、解复用、流传输等功能。因此,FFmpeg成为许多视频处理应用程序的首选工具。本教程将使用FFmpeg来对视频进行压缩处理。压缩过程中,我们会使用Java的来调用FFmpeg命令行工具,并设置合适的编码参数来减少CPU的使用负载。本文介绍了如何使用Java代码结合FFmpeg工具来对视频进行压缩,详细说明了每一个参数的作用及其对压缩效果的影响。
2025-02-28 11:17:29
928
原创 springboot+mybaties项目中扫描不到@mapper注解的解决方法
当使用@Autowired注解的时候,其实默认就是@Autowired(required=true),表示注入的时候,该bean必须存在,否则就会注入失败。两者的区别是@ComponentScan是定义包扫描的规则,设置扫描包的路径,然后根据定义的规则找出哪些需类需要自动装配到spring的bean容器中,然后交由spring进行统一管理。给启动类添加@ComponentScan(“Mapper层路径”)或者@MapperScan(“Mapper层路径”),这样子可以自定义Mapper层的资源目录。
2025-02-27 14:21:25
402
原创 Spring Boot中集成MyBatis操作数据库详细教程
在Java开发中,MyBatis是一款轻量级且灵活的持久层框架,支持SQL语句和自定义映射,尤其适合需要复杂SQL操作的应用场景。结合Spring Boot,我们可以更加方便地使用MyBatis进行数据操作。本篇文章将手把手地介绍如何在Spring Boot项目中集成MyBatis,并实现基础的增删改查操作。我们会从依赖配置开始,到实体类、Mapper接口、Service和Controller的创建,最终形成一个简洁易用的应用结构。在包中创建。
2025-02-27 12:58:13
963
原创 Redis 设置密码(配置文件、docker容器、命令行3种场景)
注意:通过命令设置密码后,为了防止下次服务重启后又变成没有密码,请注意配合以上 1、2 两种方式在服务重启后配置对应的密码。以上两种方法,都需要重启服务,如果是某些环境需求不允许停机 redis,则我们可以通过。或者直接使用 redis 桌面客户端工具连接 redis 后进入客户端命令行。如果你本地没有默认的 redis.conf 配置文件,可以从。来为 redis 设置密码,配置完后需要重启方可生效。如果 redis 是 docker 容器,可以使用命令。通过修改 redis.conf 配置文件中的。
2025-02-27 11:36:23
348
原创 MySQL:表的设计原则和聚合函数
例如:定义一个学生表,其中的字段有:学号,姓名,年龄,班级名,学校名,学校地址,这就符合了第一范式,但是如果是:学号,姓名,年龄,班级名,学校,这就不符合第一范式,因为无法找到一个数据类型来表示学校这个对象。
2025-02-26 02:42:47
854
原创 mysql9.0windows安装
将这里的位置修改为你刚刚创建并复制data目录的地址即可,win11的系统使用vscode修改之后,会让你确认开启更高权限以进行保存,比较方便,window10不需要确认,修改后可以直接保存。:在修改之前,最好将下图文件进行备份,将原始的文件保存好一份,以防更改了配置之后,导致mysql服务报错,无法启动,备份好的话直接将有问题的配置文件给替换就可以,无需重新安装一次mySql。双击下载的msi文件进行安装。安装有问题的,可以直接进行卸载,新本的mySql会将注册表中的数据自动进行清除,还是很方便的。
2025-02-26 01:22:20
615
原创 Java最新面试题大全
定期过期:每隔一定的时间,会扫描一定数量的数据库的expires字典中一定数量的key,并清除其中已过期的key。(expires字典会保存所有设置了过期时间的key的过期时间数据,其中,key是指向键空间中的某个键的 指针,value是该键的毫秒精度的UNIX时间戳表示的过期时间。键空间是指该Redis集群中保存的所有键。第二:使用volatile关键字的话,当线程2进行修改时,会导致线程1的工作内存中缓存变量stop的缓存行无效(反映到硬件层的话,就是CPU的L1或者L2缓存中对应的缓存行无效);
2025-02-24 23:43:39
823
原创 Cannot resolve plugin org.springframework.bootspring-boot-maven-plugin问题
解决方案一般是相关依赖没写完整。
2025-02-24 16:40:03
216
原创 自建RustDesk实现远程桌面
目前主流的远程桌面软件都开始收费才能使用一些功能,普通用户的连接质量和稳定性都很一般,而充值会员后的体验也没有最初的时候好了。所以我想着自建一个远程桌面服务器,只有自己用的,避免了乱七八糟的广告和一些花里胡哨的功能(主要是用的不太频繁,感觉没必要开通月度会员 =.=!网上找了一下发现开源的rustdesk挺不错的,就尝试用一下,结果还挺满意的,就分享一下配置过程。首先需要一个公网服务器转发数据,连接终端和被控端,然后在每个终端安装rustdesk软件,就可以实现远程桌面。
2025-02-23 06:37:31
1001
原创 抖音用户主页视频数据爬虫详解(点赞,收藏,分享等)
的包中有个max_cursor参数,请求载荷中也有一个这样的参数,每次请求的数据中max_cursor是下一个请求的载荷,,,同时has_more为1时候代表还能请求,0为不能请求,我们做如下判断。最后发现cookie很容易过期,批量爬取有点困难,,,,我们采用drissoinpage进行自动化获取。首先进行抓包分析,,,随便找个主页,f12,关键词搜索,发现这个包是以post开头。请你第一次运行先按0,进行登录(或者触发反爬的时候),登录完成之后,按1进行爬取,完整代码请在知识星球。
2025-02-23 04:51:37
767
原创 基于SpringBoot的全国风景区WebGIS按省展示实践
旅行是心灵的洗涤,让每一步都充满感悟和思考。在旅途中,我学会了更加珍惜眼前的风景和时光。每一次旅行都是一次重新认识自己的机会,让我更加明白自己想要的是什么。旅途中的风景和经历,成为了我人生中最宝贵的财富。旅行让我感受到了世界的广阔和无限可能,让我更加勇敢地追求自己的梦想。在旅途中,我学会了用心去感受每一个细节,去品味生活的美好。旅行是一种生活方式,让我不断地探索和发现,不断地成长和进步。每一次旅行都是一次心灵的洗礼,让我更加清晰地认识自己和世界。
2025-02-22 04:12:44
661
原创 sql中COALESCE函数详解
在SQL中,COALESCE函数是一个非常有用的函数,用于从其参数列表中返回第一个非NULL值。如果所有给定的参数都是NULL,那么COALESCE函数将返回NULL。这个函数可以接受多个参数,使其在处理可能出现的NULL值时非常灵活和强大。
2025-02-21 22:33:23
361
原创 SpringBoot连接多数据源MySQL、SqlServer等(MyBatisPlus测试)
经过上述演示,我们已经实现了在springboot项目中实现多数据库源的连接和操作,如果需要使用不同数据库,按照上述操作思路即可实现。
2025-02-21 17:34:25
1130
1
原创 spring.factories和org.springframework.boot.autoconfigure.AutoConfiguration.imports
spring.factories和org.springframework.boot.autoconfigure.AutoConfiguration.imports都是Spring Boot自动配置机制中的重要组成部分。
2025-02-21 15:40:45
694
原创 Spring AOP
*AOP(Aspect-Oriented Programming,面向切面编程):**是一种软件开发的编程范式,旨在将横切关注点(cross-cutting concerns)与核心业务逻辑分离,以提高代码的模块化性、可维护性和复用性我们首先来理解,什么是面向切面编程?切面,就是指某一类特定问题,因此AOP也可以理解为面向特定方法编程例如:在实现登录逻辑时,登录校验 就是一类特定的问题,而登录校验拦截器,就是对登录校验 这类问题的统一处理,因此,拦截器也是 AOP 的一种应用。
2025-02-21 02:34:03
983
原创 PostgreSQL JSONJSONB 查询与操作指南
PostgreSQL 提供了强大的和数据类型及相关操作,适用于存储和查询半结构化数据。本文将详细介绍其常用操作。: 返回 JSON 对象中的值,结果为 JSON 格式。– 返回:{“b”: 1}: 返回 JSON 对象中的值,结果为文本。– 返回:“1” (文本)– 返回:2 (JSON 格式)– 返回:“2” (文本)使用获取嵌套对象:– 返回:{“c”: 3}使用获取嵌套对象的文本值:– 返回:“3” (文本)
2025-02-21 01:12:55
781
原创 使用IDEA环境编译Spring源码及spring源码调试环境搭建
spring项目在开发中使用gradle进行项目自动化构建,所以在导入spring工程项目之前需要先安装gradle工具。版本说明:
2025-02-16 10:15:28
905
1
原创 【安全帽头盔检测】基于YOLOV11+pytorch+Flask+SpringBoot+Vue+MySQL的安全帽头盔检测识别系统
本系统是一个完整的基于YOLOV11+pytorch+Flask+SpringBoot+Vue+MySQL的安全帽头盔检测识别系统。可使用YOLOV1-YOLOV11的任意模型进行目标检测。可以检测图片、视频、摄像头三种方式。能够检测出是否佩戴安全帽或头盔。可应用于工地施工现场、工厂安全检查、电瓶车头盔佩戴等。技术栈使用等技术。系统还支持分用户管理。分为管理员和普通用户,管理员可查看所有记录,并管理用户。普通用户只可查看自己的记录。界面简洁、美观。支持主题色修改、布局样式修改、组件大小修改等。
2025-02-16 01:19:27
306
原创 【Python】Flask与Django对比详解:教你如何选择最适合你的Web框架
Flask是一个微型的Web框架,由Armin Ronacher在2010年开发,旨在让开发者能够快速搭建Web应用。Flask的设计哲学是“简洁而不简单”,它提供了核心功能,同时允许开发者根据需求自由添加扩展。这种灵活性使得Flask在许多项目中表现出色,尤其是在需要高度自定义的场景下。Django由Adrian Holovaty和Simon Willison在2005年创建,旨在让开发者能够快速构建功能齐全的Web应用。
2025-02-15 23:02:07
617
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人