- 博客(127)
- 收藏
- 关注
原创 【Java面试系列】初识GateWay网关
在微服务架构中,一个系统会被拆分为很多个微服务,那么作为客户端要如何调用这么多微服务呢?如果没有网关的存在,我们只能在客户端记录每个微服务的地址,然后分别去调用。这样的话会产生很多问题。客户端多次请求不同的微服务,增加客户端代码或配置编写的复杂性;认证复杂,每个微服务都有独立认证;存在跨域请求,在一定场景下处理比较复杂。
2025-03-22 15:20:41
1054
原创 SQL注入(SQL Injection)攻击原理与防御措施
SQL是一种代码注入技术,可使攻击者修改应用程序向数据库提供的查询。迄今为止,最常见和最严重的应用 程序安全威胁总是隐藏在与数据库有某些连接的网络应用 程序中。通过这种 SQL 注入,攻击者可以绕过登录程序,获取、更改甚至更新数据库,执行管理程序,或进行其他变种操作。要解释什么 是 SQL 注入,就必须了解 SQL 的一些基本原理。事实上,它已成为处理和虚拟操作这些数据库的通用语言。它用于查询、插入、更新和删除数据库记录,几乎所有网络应用程序都使用它来访问数据库;
2025-03-22 02:33:42
1046
原创 SpringCloud核心组件讲解
“一种软件开发技术- 面向服务的体系结构(SOA)架构样式的一种变体,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。每个服务运行在其独立的进程中,服务与服务间采用轻量级的通信机制互相沟通(通常是基于HTTP的RESTful API)。每个服务都围绕着具体业务进行构建,并且能够独立地部署到生产环境、类生产环境等。
2025-03-22 00:56:53
781
原创 SpringBoot3 集成 Shiro
是一个强大且易用的Java安全框架,提供了身份验证、授权、密码学和会话管理等功能。它被广泛用于保护各种类型的应用程序,包括Web应用、桌面应用、RESTful服务、移动应用和大型企业级应用。没有Spring Security 那么多晦涩的概念和术语,其原理非常清晰易懂,也非常容易集成到自己的项目中。SpringBoot 2.x 已于去年底End of life,升级到 SpringBoot 3 成了一件必须要做的事情,而SpringBoot 3 在集成 Shiro 时,有一些坑,也有一些与之前不同之处。
2025-03-10 23:35:01
270
原创 Spring Boot应用关闭分析
本文挖掘了Spring Boot的关闭方式,并列举了关闭方式,从原理、源码的角度阐述了Spring Boot的关闭代码及扩展点。同时,额外说明了一些系统特性 和原理,比如,程序退出码和信号机制。
2025-03-10 17:35:46
896
原创 redis内存突然暴增,排查思路是什么
这种暴增的应该还是上次一个群友说的,更多可能是外部因素导致的,应用新上线,定时任务这些,再有就是cat上查是哪些指令多,以及比对和之前的时间的差异。看是否有定时任务 或者 新上线的活动 ,在看下监控,请求是否暴增,一般这种暴增大概率是某个业务被突然大量调用。通过命令去确定是什么业务引起的,定位问题可能会快一些。
2025-03-10 12:49:39
176
原创 nodejs链接redis
本篇文章介绍nodejs连接redis,以及redis的基本使用。将存储和读取redis数据封装成工具类。封装redis配置信息。
2025-03-07 23:00:10
209
原创 Mysql疑难报错排查 - Field ‘XXX‘ doesn‘t have a default value
既然说的是没有默认值,那我们就在插入的时候指定传null 进去即可,由于MyBatisPlus的特性,所以最终在DBclass层,为end_time1和end_time2都设置为null 也插入和更新。某一个插入语句使用了 MyBatisPlus 的 save 方法,因为end_time1 end_time2都并没有值,所以在MyBatisPlus默认情况下,并不会在插入语句中提及,一般情况下,这种报错是表设置成非空字段,我们又没设置默认值导致的。但是这里我们明明表中设置了可空。修复后没有再次报错。
2025-03-05 19:15:28
283
原创 MySQL 安装配置(完整教程)
MySQL 是一款广泛使用的开源关系型数据库管理系统(RDBMS),由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司旗下产品。MySQL 于 1995 年正式发布,经过多年发展,凭借其开源、高效、易用等特点,在数据库领域占据了重要地位,成为了 Web 应用程序开发中最常用的数据库之一。开源免费:任何人都可以自由下载、使用和修改 MySQL,这大大降低了企业和开发者的成本,尤其适合初创企业和个人开发者。
2025-03-05 17:53:16
759
原创 Java面试被问特长,面试官问“你有什么特长”,这三种回答堪称完美,拿走不谢
正如我在简历中所写,大学期间我参加了许多社团活动和校内活动,这些经历使我对团队有了更深的理解,认真完成任务是对自己负责,更是对团队负责,我会把这种理解运用到未来的工作中。比如应聘设计行业的小白唱歌很赞,手绘方面也很强,在回答该问题,小白只需要把手绘方面的能力讲出来,再列举一下自己的作品就足够了。有工作经历但没特长:很惭愧,我不敢说自己有什么特长,只是参加工作这几年,在XX方面,我的XX能力非常不错,如管理能力。当然,以上几种回答,仅供参考,大家要根据自己的能力具体分析,来组织答案。
2025-03-05 16:28:31
237
原创 com.microsoft.sqlserversqljdbc4jar4.0 was not found产生原因及解决步骤
确认pom.xml中的依赖配置是否正确。添加 Microsoft Maven 仓库到pom.xml中。强制更新依赖并清理本地缓存。如有需要,手动下载并安装。根据网络环境,调整以强制更新依赖。希望对你有所帮助,若有问题欢迎指正~??
2025-03-05 00:03:24
766
原创 重学SpringBoot3-怎样优雅停机
允许当前的处理请求在指定的宽限期内完成。阻止新的请求进入。向外部监控或负载均衡器标记服务为不可用。这种机制可以确保服务在维护或版本升级时避免数据丢失和请求中断,提供更高的稳定性和可用性。在 Spring Boot 3 中,通过简单配置即可实现优雅停机,确保服务在关闭时能够完整处理当前请求,减少对用户体验的影响。在 Tomcat 和 Reactor Netty 上实现的优雅停机过程相似,都采用了在网络层阻止新请求和在应用层设置宽限期的方式。
2025-03-03 11:57:20
1038
原创 汇丰银行java框架_【汇丰银行Java面试】毕业生面试汇丰软件开发-看准网
JSA一共四个section,第一个section相信大家已经well aware了,没错,就是your greatest strength and how will this support you at HSBC.接下来,到了第二个sec,给大家详细讲一讲顺序,别慌,第一道是排序题,第二道是视频题,具体讲的是一位同事邀请你去review一下他们的team performance,可是你发现他们的performance是below expectation,你要怎么告诉他们这个result。
2025-03-02 22:14:48
238
原创 如何在Linux中找到MySQL的安装目录
发布时间:2024-10-22在日常管理和维护数据库的过程中,了解MySQL的确切安装位置对于执行配置更改、更新或者进行故障排查是非常重要的。本文将向您介绍几种在Linux环境下定位MySQL安装路径的方法。
2025-03-02 20:55:39
151
原创 创建一个简单的spring boot+vue前后端分离项目
在项目开发过程中,使用到vue框架技术,需要安装node下载项目依赖,但经常会遇到node版本不匹配 而导致无法正常下载,重新安装node却又很麻烦。为解决以上问题,nvm:一款node的版本管理工 具,能够管理node的安装和使用,使用简单,可下载指定node版本和切换使用不同版本,方便了node 的使用。
2025-03-02 19:16:58
1272
原创 一文弄懂 YOLOv8网络结构解读 、yolov8.yaml配置文件详细解读与说明、模型训练参数详细解析 通俗易懂!入门必看系列!
本文详细介绍YOLOv8的网络结构,YOLOv8网络主要包含Backbone、Neck和Head 3个部分。Backbone采用C2f模块,通过Bottleneck Block和SPPF模块提升特征提取能力。Neck颈部网络位于主干网络和头部网络之间,它的作用是进行特征融合和增强。Head头部网络是目标检测模型的决策部分,负责产生最终的检测结果。YOLOv8整体网络结构图YOLOv8的网络结构主要由以下三个大部分组成Backbone。
2025-03-01 15:27:11
790
原创 【postgresql】分区表管理
5.内置分区表与其分区的继承关系。2.查看分区表和分区索引大小。6.查看分区表的分区数量。4.查看分区表数据分布。1.查看有哪些分区表。7.检查表的分析时间。
2025-02-28 23:25:09
218
原创 【Docker系列】SpringBoot 项目如何动态指定配置文件
动态指定配置文件是 SpringBoot 应用管理中的一个重要特性,它使得我们可以根据不同的环境和需求灵活地管理配置信息。通过属性,我们可以轻松地指定配置文件的位置,结合 Spring Cloud Config 等工具,我们可以进一步实现配置的集中管理和动态刷新。通过上述方法,我们可以确保 SpringBoot 应用在不同环境下都能正确地加载和使用配置信息,从而提高应用的灵活性和可维护性。????呗。本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!???????????????
2025-02-28 14:25:02
570
原创 SQL 实战:复杂数据去重与唯一值提取
在实际开发中,数据重复是常见问题,例如用户多次登录记录、订单状态重复更新等。如何高效提取符合业务需求的唯一值或最新记录,对系统性能和数据准确性至关重要。本文将探讨如何使用 SQL 的以及 DISTINCT实现复杂场景下的数据去重与唯一值提取,避免重复数据干扰业务分析。函数/技术说明示例去除重复行,返回唯一记录按指定列分组,返回每组的聚合结果窗口函数,为每组记录编号,通常用于去重或排名类似,但排名相同记录具有相同序号连续排名,不跳跃。
2025-02-28 12:45:12
894
原创 SpringBoot项目整合Knife4J
首先我们要明白我们为什么要去使用API文档,在前后端脱离开发的情况下,前端程序员无法实时的知道后端接口开发的进度,后端程序员总不能每_开发完一个接口或者更新一次接口_就去wx上去跟前端程序员说,嘿!哥们哥们,我新增了一个接口,这个接口是这样这样子…这样沟通的成本也太高了,而且有时候还说不明白,搞得双方都很难受,在这样的情况下,API文档应运而生。API 文档是开发者了解 API 功能和如何正确使用的主要来源。它提供了详细的指导,包括请求格式、参数说明、响应结构。
2025-02-28 11:02:04
670
原创 SpringBoot SpringCloud spring framework 版本对应
spring-boot版本 依赖springframework jdk版本 发布时间。兼容Spring Boot 1.3.x,也兼容Spring Boot 1.4.x。兼容Spring Boot 1.4.x,也兼容Spring Boot 1.5.x。兼容Spring Boot 1.5.x,不兼容Spring Boot 2.0.x。兼容Spring Boot 2.0.x,不兼容Spring Boot 1.5.x。spring-boot和springframework、jdk的版本关系。
2025-02-27 14:08:54
413
原创 Spring Boot 热部署
在开发过程中,通常会对一段业务代码不断地修改测试,在修改之后往往需要重启服务,有些服务需要加载很久才能启动成功,这种不必要的重复操作极大地降低了程序开发效率。为此,Spring Boot框架专门提供了进行热部署的依赖启动器,用于进行项目热部署,而无需手动重启项目。
2025-02-27 12:45:51
497
原创 RabbitMQ HAProxy 负载均衡
前面我们学习了 rabbitmq 搭建集群,并且为了解决集群中队列的高可用问题,使用仲裁队列替代普通的队列,但是其实这里还有一个问题,就是我们在使用 Java 连接 rabbitmq 的时候,需要指定 rabbitmq 服务的 IP 和端口号,如果该端口号绑定的 rabbitmq 服务挂掉了,那么我们的 Java 程序是否还能够访问到呢?在RabbitMQ集群中,如果所有客户端都连接到同一个节点,该节点的网络负载会显著增加,而其他节点则可能处于空闲状态,造成资源浪费。
2025-02-27 11:23:38
934
原创 MySQL系列之远程管理(安全)
在我们的学习或工作过程中,作为开发、测试或运维人员,经常会通过各类客户端软件,远程登录MySQL数据库。作为DBA可能需要考虑这里容易出现的“纰漏”。比如在上篇文章(快捷入口)中,如果我们未设置保持登录的有效期,那么黑客可能会利用这个漏洞,进行数据窃听。当然我们能想到的,在MySQL自身迭代的过程中,自然也会涉及。今天博主开始讲讲MySQL是如何做远程登录安全吧。本文参考MySQL官方文章介绍了MySQL如何实现远程连接的安全性,包括一般配置建议。如对安全有更改的要求,可参考本文加以实践,欢迎关注。
2025-02-26 02:30:18
1008
原创 MySQL-----多表查询(一)
我们之前在讲解SQL语句的时候,讲解了DQL语句,也就是数据查询语句,但是之前讲解的查询都是单表查询,而本章节我们要学习的则是多表查询操作,多表查询就是指从多张表中查询数据。其中,多表查询又分为连接查询与子查询-- 创建部门表name varchar(50) not null comment '部门名称')comment '部门表';INSERT INTO dept (id, name) VALUES (1, '研发部'), (2, '市场部'),(3, '财务部'), (4,
2025-02-26 01:10:29
332
原创 java面试上机_常见的Java上机面试题
这主要是考查面试者代码书写和编程的熟练程度。值得注意的是,这类面试题要求能够。节数问题,中文字符占两个字节,英文字符占一个字节,理解了这个,就很容易完成本题了。在上机编程类的面试题中,大部分涉及基础编程,例如算法、语法、常用的类等知识点。上机考试主要考查面试者的实际开发能力和技术技巧。编写一个截取字符串的函数,输入为一个字符串和字节数,主要的考试形式分为笔试和上机编程考试两部分。上机编程考试,要求面试者能够根据题目的要求,本面试题容易产生困惑的是中文字符和英文字符,正确运行,往往要求面试者使用比较原始的。
2025-02-25 21:48:58
216
原创 Java Web框架篇之Spring
一个开源的轻量级开发框架,是为了解决企业应用程序的复杂性而创建的。IoC(Inversion of Control)控制反转,对象创建责任的反转,在spring中BeanFacotory是IoC容器的核心接口,负责实例化,定位,配置应用程序中的对象及建立这些对象间的依赖。XmlBeanFacotory实现BeanFactory接口,通过获取xml配置文件数据,组成应用对象及对象间的依赖关系。spring中有三种注入方式,一种是set注入,一种是接口注入,另一种是构造方法注入。
2025-02-24 19:13:14
924
原创 AIGC时代:如何快速搞定Spring Boot+Vue全栈开发
本书是一本致力于最新Web开发技术的实战指南。本书紧跟行业的最新发展趋势,全面而深入地阐述了Spring Boot 3和Vue 3在企业级应用开发中的集成与应用。全书共分为8章,从Spring Boot 3的基础入门到Vue 3的高级应用,再到前后端通信、测试与部署,每一章的内容都经过精心设计,以确保读者能够掌握关键的技能。第8章特别提供了一个综合案例,展示如何综合运用全书知识来构建一套完整的应用系统。刘 伟资深Web全栈工程师及大数据应用高级工程师,阿里云大数据认证专家(ACP)。
2025-02-24 16:23:04
942
原创 基于Python+Django的儿童图书推荐系统设计与实现
随着科技的快速发展和互联网的普及,图书的种类和数量不断增加,儿童及其家长在面对海量图书时,难以快速找到适合自己的图书。儿童图书推荐系统是一个旨在帮助儿童及其家长快速找到适合阅读的图书的工具。该系统结合图书的属性和分类信息,为儿童提供个性化的图书推荐服务。这种系统不仅提高了儿童的阅读体验,还促进了图书资源的利用效率,提升了服务水平和竞争力。本课题拟采用Python语言Django框架搭建系统,后台使用MySQL数据库进行信息管理,设计开发的儿童图书推荐系统。
2025-02-22 03:59:20
802
原创 SQL 中 COUNT 的用法详解
COUNT(*):统计表中所有行,包括NULL值。COUNT(1):与COUNT(*)类似,统计所有行。COUNT(列名):统计某列中非NULL值的数量。COUNT(DISTINCT 列名):统计某列中不重复的非NULL值。COUNT可与GROUP BY和HAVING等子句结合,进行复杂的分组统计和条件过滤。COUNT(*)和COUNT(1)在大多数数据库中性能相同,可以按习惯使用。
2025-02-21 22:20:13
743
原创 springboot整合mybatis-plus【详细版】
MyBatis-Plus(简称MP)是一个MyBatis的增强工具,旨在在MyBatis的基础上只做增强不做改变,以简化开发、提高效率。MyBatis-Plus保持了MyBatis原有的所有特性,同时增加了一些实用的功能,使得开发者能够更加便捷地进行数据库操作。主要用于指定表名,实现实体类与表名的绑定,作用于类上,适用于表名与实体类名称不统一的情况,统一的情况可以不用写。
2025-02-21 17:21:40
862
原创 Spring 中使用Mybatis,超详细
UserMapper接口的作用是告诉mybatis您要对数据库执行那些操作。具体实现类由Spring AOP完成。其中执行的SQL语句可以通过Mappser.xml配置,也可以在这里使用注解配置。我这里仅定义了几个简单的增删改查。@Mapper@Results({@Result(property = "name", column = "nickname"), // 指定属性名和列名的映射关系})
2025-02-21 15:28:01
1062
原创 Rust 图形界面开发——使用 GTK 创建跨平台 GUI
通过自定义信号,开发者可以实现复杂的交互逻辑。// 创建自定义信号println!");});
2025-02-21 02:21:44
1055
原创 PHP For 循环
在探讨PHP的高级编程技巧时,嵌套循环无疑是一个值得关注的重要主题。嵌套循环指的是在一个循环体内嵌套另一个循环,这种结构在处理多维数组或执行复杂的迭代任务时特别有效。因此,在处理大规模数据时,应当谨慎使用嵌套循环,并考虑采用更高效的算法或数据结构。在PHP的for循环中,多重初始化和更新是一种高级技巧,允许同时控制多个变量的变化。在探讨PHP中的for循环应用时,计数循环无疑是最基本也是最常见的使用场景之一。通过合理使用嵌套循环,开发者可以有效地处理复杂的多维数据结构,同时保持代码的清晰性和可维护性。
2025-02-21 00:00:24
668
原创 MySQL自启动失败(MySQL不能开机自启)解决方案_MySQL开机自启疑难杂症解决,适用Win11Win10
在注册表添加变量,再关闭设备加密后,我的MySQL就能开机自启了。另外,再写一点排查过程的记录。在这个过程中,我最开始使用的是 5.7.28 ,这个版本的发布在 win11 发布之前,我怀疑是 5.7.28 版本没有兼容 win11 导致的。所以,我尝试把版本升级到 5.7.44 , 结果还是不行。在这之前,我已经在微软官网找到有不少人遇到了相同问题,遇到这些问题的朋友,还包括 MySQL 8.x 的版本。官方似乎也没给出比较好的解决方案,如果你对官方的解决方案感兴趣,可以查看下面几个链接。
2025-02-20 22:38:21
912
原创 使用 Certbot 为 Nginx 自动配置 SSL 证书
删除证书:sudo certbot delete --cert-name name_of_certificate。在写配置文件时只需写80端口,Certbot会自动添加443端口的监听以及SSL证书的配置。Certbot将自动与Let`s Encrypt的服务器通信,验证域名,请求SSL证书。列出所有Certbot管理的证书:sudo certbot certificates。运行Certbot自动安装SSL证书。若自动更新失效,Lets Encrypt会在证书失效前发邮件提醒。
2025-02-16 10:03:35
504
原创 【从0带做】基于Springboot3+Vue3的心理健康预约平台
大家好,我是武哥,最近给大家手撸了一个基于SpringBoot3+Vue3的心理健康预约平台,可用于毕业设计、课程设计、练手学习,系统全部原创,如有遇到网上抄袭站长的,欢迎联系博主~
2025-02-16 01:07:20
380
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人