在本教程中,我们将讨论[Collections.synchronizedMap()](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/u...
查看更多
最近,我们研究了创作设计模式以及在JVM和其他核心库中的哪里找到它们。现在,我们将研究行为设计模式。这些关注于我们的对象之间如何交互或我们如何与它们交互。 2.责任链 责任链模式允许对象实现一个公共接口,并允许每种实现(...
查看更多
通常,我们发现很难选择非关系数据库作为应用程序的主要数据存储。 在本文中,我们将探讨两个流行的非关系数据库Redis和MongoDB 。 首先,我们将快速了解Redis和MongoDB提供的功能。然后,我们将通过相互比较...
查看更多
Apache Camel是一个功能强大的开源集成框架,实现了许多已知的企业集成模式。 通常,在使用Camel处理消息路由时,我们将要使用许多受支持的可插拔数据格式之一。鉴于JSON在大多数现代API和数据服务中都很流行,...
查看更多
在本教程中,我们将看到如何使用WebSockets将计划的消息从服务器发送到浏览器。一种替代方法是使用服务器发送的事件(SSE),但我们将不在本文中介绍。 Spring提供了各种调度选项。首先,我们将介绍@Schedul...
查看更多
我们已经了解了如何从JAR文件获取类名。此外,在该教程中,我们讨论了如何在Java应用程序的JAR文件中获取类的名称。 在本教程中,我们将学习从命令行列出JAR文件内容的另一种方法。 我们还将看到几个GUI工具,用于查看...
查看更多
创建Dockerfile时,通常需要将文件从主机系统传输到Docker映像中。这些可能是属性文件,本机库或我们的应用程序在运行时需要的其他静态内容。 Dockerfile规范提供了两种将文件从源系统复制到映像的方法: C...
查看更多
在构建期间,我们可以使用各种工具来报告源代码的质量。这样的工具之一就是SonarQube,它可以执行静态代码分析。 有时我们可能会不同意返回的结果。因此,我们可能希望排除SonarQube错误标记的某些代码。 在这个简短...
查看更多
在本快速教程中,我们将学习几种将Java字节数组写入文件的不同方法。我们将从一开始就使用Java IO包开始。接下来,我们将看一个使用Java NIO的示例。之后,我们将使用Google Guava和Apache Com...
查看更多
高级加密标准(AES)是一种广泛使用的对称块密码算法。初始化矢量(IV)在AES算法中起着重要作用。 在本教程中,我们将解释如何用Java生成IV。另外,我们将描述在生成IV并将其用于密码算法时如何避免InvalidAl...
查看更多
当我们使用Java处理数据库时,通常我们使用JDBC连接到数据库。 JDBC URL是在Java应用程序和数据库之间建立连接的重要参数。但是,对于不同的数据库系统,JDBC URL格式可以不同。 在本教程中,我们将仔细研...
查看更多
作为Java开发人员,我们经常需要对集合在一起的元素进行排序。 Java允许我们对任何类型的数据实现各种排序算法。 例如,我们可以按字母顺序,反向字母顺序或基于长度对字符串排序。 在本教程中,我们将探讨Comparabl...
查看更多