
Java
文章平均质量分 58
肉三
浮世万千,你我皆为蝼蚁,乾坤未定,匹夫尸骨难安
终有独上昆仑日,大喝一声:道爷我成了!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Logback 未按预期过滤到控制台输出的日志级别
告诉 Spring Boot 应用程序,日志配置文件使用与 app.jar 在同一目录中指定的外部文件 logback.xml。在控制台输出中看到级别日志。我还没有传递任何 JVM 参数,只是尝试按定义默认模式。附加程序按预期工作。但在默认模式下运行时,我仍然会。在默认值前面添加 字符。如果要将默认值设置为。我想定义在控制台中应输出什么,通过使用。这种方法导致没有日志输出到控制台。默认方式传递 JVM 参数,,则应将其设置为-INFO。要设置默认值,必须-原创 2025-01-22 09:00:00 · 157 阅读 · 0 评论 -
为什么使用 char[] 而不是 String 作为密码存储的类型?
使用数组,您可以在使用完数据后明确擦除数据。您可以用任何内容覆盖数组,并且密码不会出现在系统的任何地方,甚至在垃圾回收之前也不会出现。正如评论中所述,垃圾收集器移动的数组可能会在内存中留下数据的零散副本。在移动过程中清除所有内存,以避免这种情况。,如果另一个进程可以转储内存,则除了反射之外,在垃圾回收启动之前删除数据。只能减少攻击者的机会窗口,并且它只针对这种特定类型的攻击。使用后更改(覆盖)或将 的内容清零的方法。这意味着,一旦创建了。在 Swing 中,密码字段有一个。是不可变的,即没有定义允许您在。原创 2025-01-21 11:03:35 · 125 阅读 · 0 评论 -
@EnableFeignClients 和 @FeignClient 在自动装配时失败 ‘FeignContext’ NoSuchBeanDefinitionException
我正在编写的微服务需要与我们平台中的其他微服务进行通信。对于这一尝试,对我们来说理想的解决方案是。尝试一下,如果不行,您可能需要。但是,当我尝试时遇到以下异常。在主程序配置上添加注释。原创 2025-01-20 14:54:11 · 203 阅读 · 0 评论 -
如何在 POST 请求报文中允许空值?
我需要创建一个类而不是记录来处理空值,还是有更“有弹性”的方法来实现。我也考虑过使用Optional,但我读到这实际上并不是Optional想要实现的。我也不想限制客户端传递完整的记录,因为在我看来这没有意义。在类中,所有字段都可以是Optional类型,或者您可以保留它们作为其原始类型,但允许它们为空。我想允许客户端提交一个POST请求,该请求可能包含或不包含VideoGame记录的所有字段。我也尝试用@Nullable注释记录中的字段,但是在存储库中收到一条警告,提示参数可能为空。原创 2025-01-20 11:40:14 · 178 阅读 · 0 评论 -
spring data AggregationUpdate:如何将新值推送到数组
想要:如果数组字段为空或为空,则结果是一个仅包含我的新值的新数组,否则结果是使用我的新值扩充的现有数组。由于某种原因,mongo 客户端转换器似乎未在此使用级别找到/应用,因此我发现这是解决方法。我依靠(spring-data-mongodb)(我已经在 mongo 客户端配置中声明并使用。和条件 switchCases很有效。在现有的更新中添加一个操作,但如果数组条目是,这不起作用。这对于简单的平面值很有效,但如何使用 来实现这一点。一次性更新多个文档。原创 2025-01-20 11:29:11 · 178 阅读 · 0 评论 -
Failed to load API definition
但是使用ControllerAdvice后,Swagger响应也会经过ControllerAdvice转换,导致Swagger网页无法识别响应结构。我刚刚添加了一个带有 @ControllerAdvice 的 GlobalExceptionHandler,当我尝试访问 Swagger UI 时,因此解决方案是指定将使用ControllerAdvice的包,这样Swagger控制器就不会被转换。下面显示的实现之前,我可以毫无问题地访问 Swagger UI。我创建 Swagger 的地方。原创 2025-01-20 11:23:11 · 518 阅读 · 0 评论 -
‘org.springframework.util.Base64Utils‘ 自 6.0.5 版起已弃用并标记为删除,如何代码修改
只需使用 java.util.Base64 替换它。原创 2025-01-16 17:18:44 · 707 阅读 · 0 评论 -
高端局请入!两个不同 Java 对象实现“左连接”
由于必须将所有 id 存储在 HashSet 中,所以这并不简洁,但由于在 HashSet 中添加和访问元素是 O(1)(理论上),所以该算法是 O(n+m)表示左连接的结果集。我可以用 Java 硬编码一个算法(for... for...),但我觉得不太靠谱,至少复杂度为 n*m。根据sql语句的经验,我想做的是对两个List执行“左连接”其中键是 ids,值是 object2。可以考虑使用HashSet去实现。)和一个 Object2 列表(有一个 Object1 列表(原创 2025-01-16 17:02:10 · 332 阅读 · 0 评论 -
使用 spring boot 2.5.6 版本时缺少 jvm 配置项
我们也不能删除“springfox-boot-starter”,因为我们的应用程序中需要 swagger。,在使用的 Spring Boot 版本中默认情况下未注册。此注册已在 Spring Boot 2.6.0 版本中添加。但是,我面临的问题是指标在端点。版本的Spring Boot 项目。手动将其注册为一个 bean。尽管进行了这些更改,但。我正在使用带有版本和。原创 2025-01-16 16:45:16 · 598 阅读 · 0 评论 -
使用 JUnit 和 SuiteRunner 测试私有方法
第一次使用 JUnit 是为了为 ServiceUI API 构建一个一致性测试工具包 [一致性测试工具包的目的是帮助确保同一 API 的替代实现与 API 的规范兼容。由于 API 规范仅定义 API 的公共接口,而不是 API 的实现,因此一致性测试仅测试公共接口。换句话说,一致性测试是一种“黑盒”测试。它将测试中的 API 视为黑盒,可以看到其外部接口,但看不到其内部实现。因此,Java API 的一致性测试只需要访问测试中的包和类的公共成员。无需访问包级、受保护或私有成员。原创 2025-01-16 16:41:38 · 1334 阅读 · 0 评论 -
针对资深 Java 开发人员的 Kafka 面试问题
大家好,欢迎阅读另一篇与 Kafka 相关的文章,如今,在大多数技术面试中,例如 Java、前端、后端和全栈开发人员面试,都会问到有关 kafka 的问题。但为什么呢,因为在分布式环境中连接多个应用程序需要中间件,而 Kafka 是一种流行的中间件,功能非常强大,业界很快就采用了它,因此 kafka 在面试中很重要,让我们深入了解一下他们问过的问题类型。如果您需要确保一条消息只被处理一次,而不管消费者组是什么,您需要使用消息幂等性等技术(在上一个问题中介绍过)在消费者中实现额外的逻辑。原创 2025-01-14 11:26:10 · 635 阅读 · 0 评论 -
思科 Java 开发人员面试记录 2024(Java、Spring-Boot、Hibernate)
Authentication — 可以作为 AuthenticationManager 的输入,以提供用户提供的用于验证的凭证或来自 SecurityContext 的当前用户。@Transactional 是一个Spring注解,可以应用于方法或类,以指示注释的代码应在事务中执行。在 Spring Boot 应用程序中,ApplicationContext 是一个中央接口,在管理整个应用程序中使用的对象(bean)方面起着关键作用。过滤器功能更强大,例如,它们允许交换传递到链中的请求和响应对象。原创 2025-01-14 10:53:54 · 938 阅读 · 0 评论 -
我发现很多人都不会使用Java 中格式化字符串:String.format() 方法
在 Java 中格式化字符串的三种主要方法中 - String.format()、printf() 或 MessageFormat - String.format() 是最常用的方法。原创 2025-01-13 15:25:25 · 877 阅读 · 0 评论 -
使用最新的 Java GC 实现垂直扩展
最新一代的 GC 对运行 Java 应用程序产生了深远的影响。本文旨在重点介绍 ZGC 和 Shenandoah 的影响。原创 2025-01-13 14:44:20 · 586 阅读 · 0 评论 -
软件架构师的面试通常会被问到哪些问题
最近,我参加了一家领先的服务型公司的软件架构师(Java)职位的面试。我在这里分享了一些面试官问我的问题。我只列出了与 Java 相关的问题,因为本文主要关注 Java。面试官问我有关 AWS、Docker、Kubernetes、Kafka、Elastic Search、SQL/NoSQL 和设计模式的问题。原创 2025-01-13 13:59:59 · 930 阅读 · 0 评论 -
泛型,你真的懂了么?
泛型允许类和方法对任何指定类型进行操作,从而使代码类型安全且可重用。它们可以防止运行时类型错误并减少强制类型转换的需要。2.原创 2025-01-13 10:44:52 · 736 阅读 · 0 评论 -
没有掌握这几个 Spring Boot 高级概念那你就亏了
与 Spring Boot 集成的 Resilience4j 提供了断路器、重试和速率限制器等模式。Spring Cloud Gateway 是一个反应式 API 网关,它取代 Netflix Zuul 以获得更好的性能和灵活性。这只是有关高级 Spring Boot 功能的重要且必备知识的一瞥,这些功能可以帮助您构建健壮、可扩展且安全的企业应用程序。Spring Boot 的简单性常常掩盖了其处理复杂企业需求的能力。使用 Spring Boot 和 Kafka 的 Saga 模式。原创 2025-01-13 10:22:56 · 950 阅读 · 0 评论