随笔分类 -  Java

1 2 3 4 5 ··· 19 下一页
大叔也学学java,跟跟风...
摘要:在 Spring Boot 3.x 中为控制器编写集成测试,主要是通过 @SpringBootTest 注解加载完整的应用上下文,并利用 MockMvc 或 TestRestTemplate 来模拟 HTTP 请求并验证响应。下面我将为你提供一个清晰的指南和代码示例。 两种测试 在Spring Bo 阅读全文
posted @ 2025-08-26 17:09 张占岭 阅读(161) 评论(0) 推荐(1)
摘要:在 Spring Boot 应用中开启 HTTP/2 能带来更好的性能体验。下面我会为你解释如何根据不同的需求进行配置。首先,用一个表格来对比两种主要的实现方式: 特性 基于 TLS 的 HTTP/2 (h2) 明文 HTTP/2 (h2c) 是否需要证书 ✅ 是(SSL/TLS 证书) ❌ 否 协 阅读全文
posted @ 2025-08-26 10:13 张占岭 阅读(227) 评论(0) 推荐(0)
摘要:如果要进行文件内容的操作那么必须依靠数据流完成,而数据流分为两种: 字节流:InputStream(字节输入流)、OutputStream(字节输出流) 字符流:Reader(字符输入流)、Writer(字符输出流) 输入和输出是针对内存来说的: 输入流:字节(网络,磁盘)–> 自动转换为 –>字符 阅读全文
posted @ 2025-07-23 13:40 张占岭 阅读(128) 评论(0) 推荐(0)
摘要:https://www.baeldung.com/jpa-join-column https://docs.oracle.com/javaee/6/api/javax/persistence/JoinColumn.html https://stackoverflow.com/questions/37 阅读全文
posted @ 2025-06-25 17:32 张占岭 阅读(53) 评论(0) 推荐(0)
摘要:MySQL 8.0 引入了许多新特性和改进,旨在增强性能、可用性和安全性。以下是一些主要的新特性:数据字典,窗口函数,公共表表达式 (CTE),JSON 改进,隐式列和生成列,字符集和排序规则,原生支持 GIS 功能,支持更强的 SSL/TLS 加密选项等。 下面文章主要介绍mysql字段为Json 阅读全文
posted @ 2025-04-10 10:27 张占岭 阅读(590) 评论(0) 推荐(0)
摘要:主要内容 密码认证 授权码认证 哪个client申请的code,使用哪个client获取token 客户端认证 在kc开通了服务端帐号之后,可通过client_id和client_secret来获取token,与用户无关,无刷新token机制 自动触发社区认证 当用户在社区网站上登录后,访问这个地址 阅读全文
posted @ 2025-02-14 13:32 张占岭 阅读(711) 评论(1) 推荐(0)
摘要:matchIfMissing是@ConditionalOnProperty注解中的参数,它控制了在配置文件中没有显示声明配置时,它的一个默认值,这个默认是false,就是说,当你有一个配置叫lind.redis.enabled,在配置文件中没有声明它,那么我们就认为它是false、当值为false时 阅读全文
posted @ 2025-02-11 16:34 张占岭 阅读(537) 评论(0) 推荐(0)
摘要:我们以日期类型为例,把它作为请求参数和响应字段进行说明,默认的日期字段格式为ISO 8601标准,DateTimeFormat.ISO.DATE_TIME,格式为yyyy-MM-dd'T'HH:mm:ss,与咱们常用的日期时间有所不同,所以咱们需要重新定义一下。 本文功能 统一了日期参数,由传入的字 阅读全文
posted @ 2025-02-05 10:57 张占岭 阅读(279) 评论(0) 推荐(0)
摘要:策略模式的应用,我们以一个配置字典来说一下这个问题;首先这个字典用来管理若干个配置,每个配置项都有key和value,key是字符串,value是某种类型;我们通过一个ConfigServiceStrategy接口来规定配置的操作行为,通过ConfigServiceContext来表示一个配置上下文 阅读全文
posted @ 2024-12-31 13:35 张占岭 阅读(310) 评论(0) 推荐(0)
摘要:雪花算法的唯一性,在单个节点中是可以保证的,对应kubernetes中的应用,如果是横向扩展后,进行多副本的情况下,可能出现重复的ID,这需要我们按着pod_name进行一个workId的生成,我还是建议通过不引入第三方组件和网络请求的前提下解决这个问题,所以我修改了kubernetes的yaml文 阅读全文
posted @ 2024-12-30 15:31 张占岭 阅读(563) 评论(0) 推荐(2)
摘要:在 Java 中,使用 Mock 对象进行单元测试是一种常见的实践,尤其是在需要隔离被测试组件时。Mock 可以帮助我们模拟依赖对象的行为,从而专注于测试特定的逻辑,而不必依赖于外部系统或复杂的对象。 1. 使用 Mock 的好处 隔离测试:通过 Mock 依赖项,可以确保测试只关注被测试类的逻辑。 阅读全文
posted @ 2024-12-26 16:41 张占岭 阅读(642) 评论(0) 推荐(0)
摘要:状态机(State Machine)是一种设计模式,用于描述对象在不同状态之间的转换和行为。状态机可以帮助开发者管理复杂的状态逻辑,使得系统在不同状态下的行为更易于理解和维护。以下是关于状态机设计模式的详细介绍。 1. 状态机的基本概念 状态:表示对象在某一时刻的情况或条件。例如,订单的状态可以是“ 阅读全文
posted @ 2024-12-26 11:41 张占岭 阅读(2642) 评论(0) 推荐(5)
摘要:在Redisson中,锁的续期是一个关键特性,用于确保在锁的持有者仍在执行任务期间,锁不会被意外释放。 看门狗什么时间被启用 Redisson中的看门狗(watchdog)机制的行为确实与是否显式指定锁的超时时间有关。 lock() 方法与看门狗: 当您使用 lock() 方法而不传递任何参数时,R 阅读全文
posted @ 2024-12-25 16:05 张占岭 阅读(376) 评论(0) 推荐(0)
摘要:在Java中,重写hashCode()方法时常常会使用31作为乘数,这是因为31具有一些独特的数学性质,使其成为一个优秀的选择。以下是几个原因: 1. 奇质数的特性 31是一个奇数和质数,这意味着它能有效地减少哈希冲突的概率。使用质数作为乘数可以帮助分散哈希值,从而提高哈希表的性能。 2. 位运算效 阅读全文
posted @ 2024-12-25 13:04 张占岭 阅读(241) 评论(0) 推荐(0)
摘要:pojo实体bool字段不要加is前缀,在lombok这类工具自动的getter,setter方法时,对于布尔类型,它有自己的命名规则,boolean会把getter方法添加统一前缀is,如boolean的getter方法就是isDefault(),而如果你的字段也命名为isDefault,那么在反 阅读全文
posted @ 2024-12-17 14:49 张占岭 阅读(177) 评论(0) 推荐(0)
摘要:Jedis Jedis 是一个 Java 客户端,用于与 Redis 数据库进行交互。它提供了一系列简单易用的 API,使得在 Java 应用程序中使用 Redis 变得非常方便。以下是 Jedis 的使用方法及一些注意事项。 Jedis的优势 Lettuce客户端及Jedis客户端比较如下: Le 阅读全文
posted @ 2024-12-13 20:45 张占岭 阅读(525) 评论(2) 推荐(0)
摘要:如果多个实体类都有 isDelete 字段,并且你希望在插入时为它们统一设置默认值,可以采取以下几种方法来减少代码重复: 1. 使用基类(抽象类) 创建一个基类,其中包含 isDelete 字段和 @PrePersist 方法。然后让所有需要这个字段的实体类继承这个基类。 示例代码: import 阅读全文
posted @ 2024-11-18 15:49 张占岭 阅读(495) 评论(2) 推荐(1)
摘要:场景 我在开发修改密码功能,通过原密码和新密码及确认新密码,希望通过ConstraintValidator这个方式来校验新密码和确认新密码,规则是这两个密码需要是相同的。 参考文档 https://github.com/micronaut-projects/micronaut-core/issues 阅读全文
posted @ 2024-10-14 14:43 张占岭 阅读(415) 评论(0) 推荐(0)
摘要:前言 如果多个实体类都有 isDelete 字段,并且你希望在插入时为它们统一设置默认值,可以采取以下几种方法来减少代码重复: 1. 使用基类(抽象类) 创建一个基类,其中包含 isDelete 字段和 @PrePersist 方法。然后让所有需要这个字段的实体类继承这个基类。 示例代码: impo 阅读全文
posted @ 2024-09-27 15:07 张占岭 阅读(366) 评论(0) 推荐(0)
摘要:前言 前端与后端在进行交互时,前端传的对象中,有的属性是int,boolean这些类型,它们是有默认值的,当前端不转它们时,后端也会接收到默认值,如int为0,boolean为false,这就给后端代码带来不确定性;比如要有个put更新用户的方法,有个用户对象如下 @Data public clas 阅读全文
posted @ 2024-09-27 09:01 张占岭 阅读(274) 评论(0) 推荐(0)

1 2 3 4 5 ··· 19 下一页