JAVA 十月 05, 2025

【转】Debug调试时 Object@xxx表示什么

文章字数 2.2k 阅读约需 2 mins.

再用IDEA等工具调试Java代码时,往往会看到类似Person@434这样的信息。关于@符号后面数字表示的含义,这里...

查看全文

SPRING 九月 27, 2025

如何找到 SpringBoot 应用中的所有 BeanFactory

文章字数 9.3k 阅读约需 8 mins.

还在给每个请求加前缀避免模块间接口冲突呢? 中,我们讨论了在一个 Spring Boot 应用中注册多个 DispatcherServlet 来实现应用上下文隔离的方案,以达到在不同 Servlet 关联的上下文中,注册相同 RequestMappingController,乃至相同名称的 Bean 的效果。

在实际使用这种模式时,可能会遇到某些原因导致上下文隔离的效果跟预期不一致的情况,比如 SpringBootApplication 启动类上使用了 @ComponentScan 注...

查看全文

JAVA 九月 07, 2025

多 Servlet 环境下,请求的 ServletPath 是什么

文章字数 17k 阅读约需 15 mins.

Servlet 是 Java EE(现为 Jakarta EE)规范中的一个重要组件,用于处理客户端请求并生成动态响应。Servlet 通常运行在 Servlet 容器(如 Apache Tomcat、Jetty 等)中,负责接收 HTTP 请求、处理业务逻辑并返回 HTTP 响应。

以下内容引自 廖雪峰的官方网站 - 手写Tomcat - Servlet规范

Servlet规范有好几个版本,每个版本都有一些新的功能。以下是一些常见版本的新功能:

Servlet 1.0:定义了Servlet...

查看全文

SPRING 八月 31, 2025

Spring 中 BeanFactory 和 ApplicationContext 的关系梳理

文章字数 593 阅读约需 1 mins.

几个重点:

  1. BeanFactory 接口提供的查找 Bean 的方法,需要时都会到父级工厂(如果有的话)中去查找。
  2. ListableBeanFactory 接口中可以获得一类 Bean,不会包含父级工厂中的 Bean。
  3. ApplicationContext 接口继承了 ListableBeanFactory 接口,同时继承了 HierarchicalBeanFactory 接口以支持父级上下文。
  4. WebApplicationContext 接口在 ApplicationContext 的基础...
查看全文

JAVA 八月 17, 2025

【转】sonar对于处理InterruptedException异常提示的原因分析

文章字数 5.4k 阅读约需 5 mins.

当我们使用会抛出InterruptedException异常的方法时,如果处理不当可能会发生一些预期之外的问题。

下面看一段代码演示:

public class ThreadInterruptedDemo {

    public static void main(String[] args) throws InterruptedException {...
查看全文

BOOK 八月 10, 2025

《Java 9模块化开发:核心原则与实践》书摘

文章字数 25k 阅读约需 22 mins.

豆瓣评分 6.9

所有代码示例都可以在GitHub(https://github.com/java9-modularity/examples )上找到。

知识是共享的唯一财富

1.1 什么是模块化

模块必须遵循以下三个核心原则:

1.强封装性

2.定义良好的接口

3.显式依赖

1.2 在Java 9之前

OSGi要求将导入的包在JAR中列为元数据,称之为捆绑包(bundle)。

此外,还必须显式定义导出哪些包,即对其他捆绑包可见的包。

Maven和OSGi构建在JVM和Java...

查看全文

JAVA 五月 18, 2025

【转】Java 8 到 Java 24 新特性一览

文章字数 79k 阅读约需 1:12

  1. 本文整理了 Java 8 至 Java 24 各版本的新特性,内容包括每个版本的新增功能分类(如语法增强、性能优化、工具支持等)、详细的代码示例,并结合官方文档资料,分析每项特性的应用场景及优缺点。
  2. Java 8 发布于 2014 年,此后 Java...
查看全文

SPRING 一月 26, 2025

Spring Test 模块中的上下文缓存特性

文章字数 8.7k 阅读约需 8 mins.

Context CachingSpring Framework 中的 Spring TestContext Framework 所提供的 Context Management 上下文管理能力对测试所需使用的应用上下文的缓存支持,以减少初始化相同的应用上下文导致的时间浪费。

当执行测试用例时,若未能完全复用缓存中的 context,将会无谓的拖慢测试阶段的耗时,进而影响快速反馈的效果。

那么初始化多个 context 会对构建时间产生多大的影响呢?

这个问题会因环境而异:不同的初始化次数、容...

查看全文

JAVA 十一月 17, 2024

Maven 配置中的仓库和镜像

文章字数 6.4k 阅读约需 6 mins.

Maven 中,仓库(Repository)是指存放 pomjar 等文件的地方,分为本地仓库和远程仓库。

本地仓库(Local Repository)

本地仓库是 Maven 在本地文件系统中的一个目录,用于存储 Maven 项目的构建输出、依赖库、插件等。默认情况下,本地仓库位于用户目录下的 .m2 目录。可以在 settings.xml 配置文件中通过 <localRepository> 元素修改本地仓库的默认路径。

远程仓库(Remote Repository)

不在本地的...

查看全文

JAVA 十月 13, 2024

Java 正则表达式的灾难性回溯

文章字数 9.7k 阅读约需 9 mins.

新建一个 Backtracking.java 文件,内容如下:

public class Backtracking {
    public static void main(String[] args) {
        System.out.println(System.getProperty("java.version"));
        System.out.println("The first regex evaluation will never end in JDK <= 9:&...
查看全文
加载更多
0%