
001 - 基础开发能力
文章平均质量分 66
本专栏聚焦 Java 生态核心技术与企业级开发体系,涵盖三大知识模块,助力开发者构建从基础到架构的完整技术栈:专栏特色:理论结合实战,通过代码示例与场景化案例解析技术原理,兼顾基础夯实与架构思维培养,适合 Java 开发工程师从初级到中高级的能力进阶。
本本本添哥
奶爸的编程之路,也就一周冷个三天~
专门分享AI大模型/Java微服务/计算机软考/项目管理/个人成长/思维框架/效能工具等相关内容
欢迎关注我的公众号:本本本添哥
展开
-
【异常】SpringMVC提示异常Required request parameter ‘xxx‘ for method parameter type xxxx is not present
SpringMVC 注解@RequestBody与@RequestParam的比较springMVC的注解@RequestParam与@RequestBody原创 2022-11-03 14:38:31 · 5560 阅读 · 0 评论 -
【异常】原来提示SocketTimeoutException:connect timed out还可能是外部因素导致
原来提示SocketTimeoutException:connect timed out还可能是外部因素导致原创 2023-01-12 21:18:35 · 10286 阅读 · 0 评论 -
【异常】has been compiled by a more recent version of the Java Runtime (class file version 55.0)
Exception in thread "main" java.lang.UnsupportedClassVersionError: has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class f原创 2022-12-30 10:46:57 · 55594 阅读 · 0 评论 -
【异常】IDEA启动之后,提示java.lang.ClassNotFoundException(错误: 找不到或无法加载主类 )
【异常】IDEA启动之后,提示java.lang.ClassNotFoundException(找不到或无法加载主类)原创 2023-01-07 08:16:26 · 8046 阅读 · 1 评论 -
【异常】SpringSecurity登录失败:Full authentication is required to access this resource
【项目】SpringSecurity登录失败:Full authentication is required to access this resource原创 2023-01-07 06:55:06 · 7577 阅读 · 1 评论 -
【异常】“请求参数类型不匹配,参数[id]要求类型为:‘java.lang.Long‘,但输入值为:‘getPageFootConfig‘“
在系统运行过程中,前端请求/admin/companyInfo/getPageFootConfig时,后端报错“请求参数类型不匹配”。前端代码中定义的请求路径与后端接口路径不一致,前端请求的是getPageFootConfig,而后端实际提供的接口是getPageFooterConfig,导致请求无法正确匹配。解决方法是确保前端请求路径与后端接口路径一致,避免因路径错误引发的参数类型不匹配问题。原创 2025-05-16 11:23:48 · 67 阅读 · 0 评论 -
【项目实战】在Spring Boot中修改启动Banner可以通过多种方式实现(使用文本文件自定义Banner、使用图片文件作为Banner、通过代码控制Banner、通过代码控制Banner)
在Spring Boot中,修改启动Banner可以通过多种方式实现。首先,可以通过在src/main/resources目录下创建banner.txt文件,并利用ASCII字符画自定义Banner,支持动态变量和颜色控制。其次,可以使用图片文件(如banner.jpg或banner.gif)作为Banner,Spring Boot会自动将其转换为ASCII艺术形式。此外,还可以通过代码控制Banner的显示模式,如关闭Banner或完全自定义Banner实现。配置文件中也提供了简单的方式来控制Banner原创 2025-05-13 11:21:37 · 65 阅读 · 0 评论 -
【异常】ValidatorConfig and org.springframework.validation.beanvalidation.LocalValidatorFactoryBean
(如果是 Gradle 项目)文件,确保所有 Spring 依赖都使用相同的版本。可以使用 Maven 或 Gradle 的依赖分析工具来检查项目中的依赖树,找出潜在的版本冲突。如果发现有冲突的依赖,可以使用 标签排除不需要的传递依赖。有时候,缓存的类文件或者旧的依赖可能会导致问题。在 pom.xml 文件中,确保所有 Spring 依赖使用相同的版本。要确保项目里所有 Spring 相关的依赖版本是兼容的。如果不需要,可以移除其中一个类,或者将它们的功能合并到一个类中。方法,然而这个方法并不存在。原创 2025-04-21 16:16:25 · 27 阅读 · 0 评论 -
【项目实战】在 Java 里,有几种方式能实现 5 秒的延迟`Thread.sleep()`/`ScheduledExecutorService`/`Timer` 类
在 Java 里,有几种方式能实现 5 秒的延迟,下面分别介绍不同场景下的实现方法。Timer。原创 2025-04-21 16:04:25 · 52 阅读 · 0 评论 -
【异常】Correct the classpath of your application so that it contains compatible versions of the classes
要确保类里对类的使用和当前Spring Boot版本兼容。你可以查看Spring Boot官方文档,了解对应版本的类的方法和属性。原创 2025-04-21 16:01:05 · 125 阅读 · 0 评论 -
【异常】The following classes could not be excluded because they are not auto-configuration classes:
类并非你想要排除的类,或者该类对应用运行并无影响,那么可以把。Spring Boot应用在尝试排除非自动配置类。属性仅能用于排除自动配置类,也就是那些被。要保证你想要排除的类是自动配置类。Spring Boot里的。文件里被列为自动配置类的类。并非自动配置类,就不能用。你可以在主应用类上运用。替换成你主应用的包名。配置里的这个类移除。原创 2025-04-21 15:57:34 · 174 阅读 · 0 评论 -
【项目实战】在 Java 里,Round Robin(轮询调度)算法是一种简单且常见的任务调度/资源分配算法,它按顺序轮流选择元素,常用于负载均衡、资源分配等场景。
在 Java 里,(轮询调度)算法是一种常见的任务调度算法,常用于负载均衡、资源分配等场景。原创 2025-04-21 15:39:46 · 17 阅读 · 0 评论 -
【异常】代码尝试访问一个长度为 0 的数组或者集合的第 0 个元素提示IndexOutOfBoundsException: Index 0 out of bounds for length 0
表明,代码尝试访问一个长度为 0 的数组或者集合的第 0 个元素,这是不被允许的。由于你提供的代码里没有明显的数组或集合越界访问,所以这个错误可能出现在你代码里调用的其他方法中。如果错误是在数据库查询后出现的,那么可能查询结果为空,但是代码却尝试访问第一个元素。在代码里若有对数组或者集合进行索引访问的操作,就需要保证其长度不为 0。若错误和请求参数有关,就要保证请求参数不为空。原创 2025-04-21 15:32:13 · 47 阅读 · 0 评论 -
【项目实战】并发集合ConcurrentHashMap ,通过细粒度锁和 CAS 实现高并发,适合键值对的频繁读写。CopyOnWriteArrayList,以空间换时间,保证读操作无锁,但写性能
原创 2025-04-09 13:39:29 · 33 阅读 · 0 评论 -
【异常】JSONException: JSONArray initial value should be a string or collection or array.
以下是一个简单示例,展示了正确和错误的使用方式:你需要检查代码中调用。构造函数通常期望传入字符串、集合或者数组作为初始化值。方法的地方,确保传入的参数是字符串、集合或者数组。时,传入的值既不是字符串,也不是集合或数组。方法时,传入的参数不符合要求。原创 2025-04-09 09:32:18 · 42 阅读 · 0 评论 -
【项目实战】Java中的数据类型分为两大类:基本数据类型(Primitive Data Types) 和引用数据类型(Reference Data Types)
通常情况下,为了方便物品的存储,我们会规定每个盒子可以存放的物品种类,就好比在“放臭袜子的盒子”里我们是不会放“面包”的!同理,变量的存储也讲究“分门别类”!Java 语言是一种强类型语言。通俗点说就是,在 Java 中存储的数据都是有类型的,而且必须在编译时就确定其类型。Java中的数据类型分为两大类:和,在 Java 的领域里,基本数据类型变量存的是数据本身,而引用类型变量存的是保存数据的空间地址。原创 2025-04-07 14:20:20 · 316 阅读 · 0 评论 -
【项目实战】使用Java开源工具HttpClient和Jsoup抓取并解析网页数据,通过HttpClient与Jsoup的结合,可高效实现网页抓取与结构化数据提取,适用于爬虫开发、数据分析等场景.
使用Java开源工具HttpClient和Jsoup抓取并解析网页数据,通过HttpClient与Jsoup的结合,可高效实现网页抓取与结构化数据提取,适用于爬虫开发、数据分析等场景。原创 2025-04-05 13:43:36 · 43 阅读 · 0 评论 -
【项目实战】Window电脑如何打开任务管理器(使用Ctrl+Alt+Delete)以及访问管理工具(eg:在cmd中输入services.msc以及控制面板中选中“管理工具”)
打开任务管理器直接按(推荐)。或按→ 选择“任务管理器”(新版本系统需多一步操作)。访问管理工具控制面板 → 系统和安全 → 管理工具。或通过运行对话框输入gpedit.msc等直接打开特定工具。请根据实际系统版本和权限调整操作。原创 2025-04-04 12:43:49 · 420 阅读 · 0 评论 -
【项目实战】关于微信公众号及其开发模式的详细解析,微信公众号通过“编辑模式”和“开发者模式”满足不同层级的运营需求。
以下是关于微信公众号及其开发模式的详细解析,微信公众号通过“编辑模式”和“开发者模式”满足不同层级的运营需求。编辑模式适合快速搭建基础服务,而开发者模式通过API扩展功能,结合第三方工具可实现复杂业务场景(如电商、数据整合)。选择模式时需权衡技术能力与业务目标,并遵循微信平台的规则与接口限制。原创 2025-04-04 12:08:03 · 48 阅读 · 0 评论 -
【项目实战】常见的字符编码标准主要包括以下几类(ASCII编码/nicode及其编码形式/中文编码标准/其他区域性编码/历史与专有编码)
编码标准字符范围字节长度主要应用场景来源ASCII英语基础字符1字节(7位)早期计算机、通信UTF-8全球所有语言1-4字节(变长)网页、跨平台文件存储GBK简体中文扩展2字节(定长)中文Windows系统ISO-8859-1西欧语言1字节(定长)欧洲地区文本Shift-JIS日语2字节(变长)日文软件与文档。原创 2025-04-04 10:17:16 · 55 阅读 · 0 评论 -
【项目实战】设计模式之组合模式(Composite Pattern)是一种结构型设计模式,用于将对象组织成树形结构以表示“部分-整体”的层次关系,使得用户对单个对象和组合对象的使用具有一致性。
树形结构表示层次关系组合模式通过树形结构描述对象间的部分-整体关系,例如总店-分店-加盟店的层级结构,或一套衣物由多个单品组成。树中的每个节点可以是叶子节点(无子节点,如单品衣物)或组合节点(包含子节点,如总店包含分店)。统一接口与一致性操作所有节点(无论是叶子还是组合)都实现相同的接口(如Component),客户端无需区分具体类型即可调用公共方法(如刷会员卡或计算积分例如,总店刷卡时自动累积所有下级店面的积分,无需关心子节点数量或类型。解耦客户端与复杂结构。原创 2025-04-04 09:55:21 · 22 阅读 · 0 评论 -
【项目实战】ph-css 是一个专为 Java 设计的独立 CSS 处理库,主要用于解析、构建和优化 CSS 文件。
ph-css 是一个专为 Java 设计的独立 CSS 处理库,主要用于解析、构建和优化 CSS 文件。ph-css 凭借其强大的解析能力、灵活的 API 设计和广泛的应用场景,成为 Java 生态中处理 CSS 任务的优选工具,尤其适合需要深度操作样式表的开发需求。原创 2025-03-31 09:47:23 · 39 阅读 · 0 评论 -
【项目实战】多线程入门介绍 —— 程序(Program),进程(Process),线程(Thread)
理解进程、线程、程序三者的关系是入门多线程的基础,实际开发中需结合同步机制和资源管理确保线程安全。不同语言(如Java、Python)的实现细节略有差异,但核心概念相通。线程生命周期包括新建(New)、就绪(Runnable)、运行(Running)、阻塞(Blocked)、终止(Terminated)等状态。程序是静态的指令集合,由代码和数据组成,用于完成特定任务。线程优先级(1-10)影响调度顺序,但依赖操作系统实现。线程共享进程的内存和资源,简化数据交互(如全局变量)。共享数据需通过锁(如。原创 2025-03-25 10:22:17 · 160 阅读 · 0 评论 -
【JVM与性能调优】JVM内存模型
JVM具有一个内存模型,它定义了程序如何访问和存储数据。Java虚拟机(JVM)的内存模型描述了Java程序运行时如何管理内存。JVM内存被分为几个不同的区域,每个区域都有其特定的目的和生命周期。每个区域都有其特定的用途和生命周期,并且对于内存溢出(OOM)有着不同的触发条件。理解JVM内存模型对于优化Java应用程序的性能和资源使用至关重要。原创 2025-03-25 10:12:27 · 357 阅读 · 0 评论 -
【项目实战】在Windows本地以单例模式启动Nacos
此命令显式指定单机模式启动。原创 2025-03-20 11:26:19 · 598 阅读 · 0 评论 -
【异常】`java.lang.NoSuchFieldError: ESCAPE_CHARACTER` 错误表示应用程序在运行时尝试访问一个不存在或已变更的字段 `ESCAPE_CHARACTER`。
若问题仍未解决,建议通过调试工具(如 IDE 的断点或字节码查看器)定位。错误表示应用程序在运行时尝试访问一个不存在或已变更的字段。字段的具体来源及变更历史,进一步排查深层原因。原创 2025-03-20 11:25:05 · 402 阅读 · 0 评论 -
【异常】Exception in thread “main“ java.lang.NoSuchMethodError: SpringFactoriesLoader
是Spring Framework 6.0引入的新方法。而Spring Boot 3.x系列要求Spring Framework版本为6.x。若项目中存在低版本Spring框架(如5.x),该方法将不存在,从而引发异常。,具体表现为子模块中显式引用了与Spring Boot 3.x不兼容的旧版本Spring框架库(如5.3.23),导致。在升级Spring Boot至3.3.0版本时出现的。重点关注是否有旧版本Spring库被引入,并通过。通过以下步骤,可消除版本冲突,使。确保构建时仅使用正确版本的依赖。原创 2025-03-20 11:23:30 · 325 阅读 · 0 评论 -
【项目实战】在Java中实现请求参数特殊字符过滤器的核心思路是通过自定义过滤器包装HttpServletRequest对象,并重写参数获取方法进行字符过滤,可有效防御XSS和SQL注入攻击。
在Java中实现请求参数特殊字符过滤器的核心思路是通过自定义过滤器包装HttpServletRequest对象,并重写参数获取方法进行字符过滤。请求参数中的特殊字符过滤器 处理比如(html相关,如脚本、加载、点击、更改、sql相关,如删除、删除、截断、显示、–)等具体步骤如下:这种实现方式基于装饰者模式,既保留了原始请求对象的功能,又扩展了过滤能力,可有效防御XSS和SQL注入攻击。原创 2025-03-19 09:56:57 · 33 阅读 · 0 评论 -
【项目实战】Spring Boot 项目中添加 OGNL依赖,使用 OGNL 表达式来访问和操作 Java 对象
pom.xml在你的 Spring Boot 项目中添加 OGNL (Object-Graph Navigation Language) 依赖,可以让你在应用程序中使用 OGNL 表达式来访问和操作 Java 对象。OGNL 是一种强大的表达式语言,它允许你以字符串形式编写简单的或复杂的表达式来获取对象的属性值、调用方法等。原创 2025-03-18 14:13:42 · 60 阅读 · 0 评论 -
【项目实战】在 Spring Boot 项目中使用 Aviator 求值表达式来处理各种表达式
Aviator是一个轻量级的、高性能的 Java 表达式求值引擎。它允许你在运行时动态地解析和执行表达式,适用于配置化、规则引擎等场景。在你的pom.xml文件中添加了这个依赖后,你可以在 Spring Boot 项目中使用 Aviator 来处理各种表达式。原创 2025-03-18 14:09:20 · 176 阅读 · 0 评论 -
【项目实战】Spring Boot 提供了 spring-boot-starter-mail 依赖,实现邮件发送功能
Spring Boot 提供了依赖,可以让你非常方便地在 Spring Boot 应用程序中集成邮件发送功能。这个 starter 依赖于 JavaMail API 和 Spring Framework 的邮件支持。原创 2025-03-18 14:08:41 · 82 阅读 · 0 评论 -
【项目实战】在Spring Boot项目中集成Kafka并进行常规配置时,`maxPollRecordsConfig` 是一个重要的消费者配置参数。
在Spring Boot项目中集成Kafka并进行常规配置时,是一个重要的消费者配置参数。它用于设置每次轮询时返回的最大记录数。通过合理设置这个参数,可以控制消费速率,防止因一次性拉取过多消息而导致内存溢出或处理不过来的情况。下面是一个简单的步骤指南,展示如何在Spring Boot项目中集成Kafka,并配置。原创 2025-03-18 13:52:53 · 48 阅读 · 0 评论 -
【项目实战】在Java中,`try-catch-finally`结构中,**`finally`块在大部分情况下一定会被执行**,但存在**特殊场景会导致其不执行**。
通常用于释放资源(如关闭文件、数据库连接),确保资源不被泄露。之前因异常终止(如类加载失败),结构中,finally。,直接终止虚拟机,导致。例如,以下代码展示了。原创 2025-03-17 17:38:54 · 123 阅读 · 0 评论 -
【异常】在Spring Boot应用中优化504 Gateway Time-out错误,需要从应用性能、服务器配置及请求处理机制三方面入手。
在Spring Boot应用中优化504 Gateway Time-out错误,需要从应用性能、服务器配置及请求处理机制三方面入手。504错误本质是上游服务响应超时,需综合优化应用逻辑、资源配置及架构设计。优先通过分页、异步、数据库优化缩短处理时间,再调整超时参数作为兜底。生产环境中应结合监控持续改进,避免简单增加超时时间掩盖性能问题。原创 2025-03-17 09:44:17 · 194 阅读 · 0 评论 -
【异常】在使用Files.copy()方法复制文件时遇到了FileAlreadyExistsException异常,这是因为目标路径已存在同名文件。
通过添加选项,可解决目标文件已存在的异常问题。这是Java NIO提供的标准解决方案,既简洁又高效。原创 2025-03-17 09:44:01 · 122 阅读 · 0 评论 -
【项目实战】Springboot 如何判断当前是沙箱环境还是本地环境
推荐方法:结合Spring Profiles与自定义配置属性,既能利用框架原生支持,又能灵活扩展环境标识。验证方式:通过单元测试或日志输出当前环境:@TestSystem.out.println("当前环境: " + envType);// 输出"sandbox"或"local"原创 2025-03-17 09:43:39 · 147 阅读 · 0 评论 -
【异常】在StringTemplate中出现错误`mismatched input ‘“INCOMPLETE/“‘ expecting ID`
使用StringTemplate的语法检查工具(如有)或逐行调试,确认所有占位符和标签闭合正确。的位置发现了不符合规则的输入。在StringTemplate中出现错误。为合法ID,从而解决输入不匹配的问题。,通常是因为语法解析器在预期。),并确保其符合变量命名规则。通过以上调整,解析器将正确识别。,找到模板中对应位置,检查。原创 2025-03-16 10:58:16 · 89 阅读 · 0 评论 -
【项目实战】在Spring Boot项目中使用Freemarker模板引擎将HTML整个返回
在Spring Boot项目中使用Freemarker模板引擎将HTML整个返回,可以按照以下步骤进行,通过以下步骤,Spring Boot项目就可以使用Freemarker模板引擎来动态生成并返回HTML页面了。原创 2025-03-16 10:52:15 · 35 阅读 · 0 评论 -
【异常】Thymeleaf部署后样式丢失
检查模板路径配置:确认prefix和suffix正确,Controller返回视图名无前导斜杠。验证静态资源位置:确保资源在static目录,HTML引用路径正确。关闭缓存并清理:开发环境关闭缓存,重启应用。检查依赖版本:升级后项目需验证Thymeleaf及相关扩展的版本兼容性。调整HTML模式:非严格HTML需配置并添加依赖。通过以上步骤,可系统性解决Thymeleaf部署后样式丢失的问题。原创 2025-03-16 10:51:10 · 56 阅读 · 0 评论 -
【项目实战】在Thymeleaf中使用内置CSS主要涉及两种方式:直接引用静态CSS文件和在CSS `<style>` 标签内进行内联处理。
在Thymeleaf中使用内置CSS主要涉及两种方式:直接引用静态CSS文件和在CSS<style>标签内进行内联处理。通过以下方法,可以在Thymeleaf模板中灵活地使用内置CSS,实现动态样式表的生成和应用。原创 2025-03-16 10:50:07 · 81 阅读 · 0 评论