- 博客(230)
- 收藏
- 关注
转载 Spring Boot 如何接收并处理不确定类型的请求参数?
字段可能包含的几种特定的复杂对象类型,可以使用 Jackson 的注解来处理多态类型。这需要创建一个基类,并使用注解来指定可能的子类型。字段的结构非常复杂,且不能用简单的多态类型来描述时,可以创建自定义的反序列化器。在 Spring Boot 中,当 JSON 数据结构不确定时,可以使用。可以存储键值对的形式,能够灵活地处理各种不同的字段组合。字段中的内容,但需要自己编写更多的解析逻辑。首先,创建一个自定义的反序列化器类,继承。例如,创建一个请求体对应的类,其中用。字段中的 JSON 数据,可以使用。
2025-07-24 15:36:36
4
转载 探索 Python Type Hints 中的冷门但实用的特性
在上面的示例中,我们使用了 `TypeVar` 和 `Generic` 来定义了一个通用的栈类 `Stack` 和一个接受任意可迭代对象的打印函数 `print_items`。`TypeVar` 允许我们创建泛型类型变量,使函数、类和方法更加灵活和通用。在上面的示例中,`number` 参数可以是 `int` 或 `float` 类型,返回值也可以是 `int` 或 `float` 类型。在上面的示例中,`name` 参数只能是 `'Alice'` 或 `'Bob'`,如果传入其他值将会触发类型检查错误。
2025-07-22 17:09:31
7
转载 js删除对象属性
通过用展开运算符(…)可以将需要省略特定属性的对象解构到新对象。这个技巧在需要删除多个属性时特别有用,并且不会更改原始对象。ES6新增的方法,Reflect.deleteProperty(对象,属性名),返回一个布尔值。delete 将完全从对象中删除属性,会导致原始对象的发生改变,但速度很慢。属性本身仍将存在于对象中,它还会改变原始对象。删除后数组长度不变,原索引下元素变为null。1.将属性设置为 undefined。2.使用 delete 操作符。4.使用Reflect。
2025-07-18 13:53:43
17
转载 Java中的数据类型转换
与 PHP 或 JavaScript 不同,Java 是一种强类型编程语言。这实质上意味着每个变量都必须使用预定义的数据类型声明,之后不能更改。在这篇文章中,我将重点介绍原始数据类型的类型转换。
2025-07-15 15:56:11
6
转载 spring-boot重试机制:Guava-Retrying
在我们正常的业务开发中,不免会发生请求第三方接口的应用场景,但由于网络不稳定的原因经常会发生一些问题,比如:请求虽然发出去,但返回的确实服务器繁忙、或者干脆没有返回信息等等,这时可以应用重试机制来解决这个问题,常用的重试有java Retry、springboot Retry与guava-retrying。guava-retrying是基于谷歌的核心类库guava的重试机制实现,本文一个常用的post与get的方法来介绍guava retrying重试机制的使用。
2025-07-10 15:20:06
11
转载 Springboot整合SSMP报错分析
这次介绍小白学习Springboot中整合SSMP(Spring+SpringMVC+Mybatis-Plus)时可能出现的一些常见报错(我刚学习的时候遇到的),以及相应的解决方案。下面这些问题也是我遇到的问题,对于初学者来说可能会比较有帮助,希望给大家带来参考。本文介绍了在Springboot中整合SSMP框架时可能出现的常见报错及其解决方案。其中包括lambda表达式条件构造器报错和表名不匹配报错的解决方法。希望对你在使用SSMP框架时遇到的问题提供有价值的参考。
2025-07-09 17:57:13
11
转载 MySQL 数据类型详解:字符串、数字、日期
MySQL 提供了**字符串(String)、数字(Numeric)和日期(Date & Time)**三大类数据类型,每种类型又有不同的子类型,以适应不同的业务需求。MySQL 提供了多种数据类型,每种类型都有其适用场景。合理选择数据类型可以提升存储效率、优化查询性能,并避免精度损失。希望这篇文章能帮助你在。在 MySQL 中,选择合适的[数据类型]对于数据库的。[字符串类型]用于存储文本数据,主要分为。当存储较长的文本或二进制数据时,使用。数字类型用于存储整数或小数,主要分为。,从而扩大可用范围。
2025-07-04 15:15:28
17
转载 golang之数组和切片
对于一个从java转golang的开发者而言,数组和切片是最容易弄晕的地方。往往傻傻的分不清数组和切片的区别。其实这两个数据结构从底层的实现来说并没有什么差异,只是数组是不可变化的(这里不可变化并不是说其是常量),而切片是可变的。
2025-07-02 16:01:56
9
转载 Java 流程控制语句
Java 中涉及控制执行流程的关键字有 if-else、while-do-while、for、switch、return、break、continue 等等;我们来挑几个来说道说道。
2025-07-01 18:16:32
13
转载 Go语言中的流程控制语句
在Go语言中,可以在if后面加上一段执行语句,执行语句也可以用作对if条件的判断。它的语法格式为:cssa赋值为condition()方法的结果,然后让a与nil进行判断,如果为true,那么会执行代码块中的代码,否则不执行,而且a的作用域只会在这条语句的范围内。
2025-06-25 13:55:32
12
转载 Spring拦截链的实现原理是什么?
简单来说,拦截链是一个处理请求的拦截器列表,按照一定的顺序,一个一个地拦截并处理请求。每个拦截器都可以在请求处理前、处理后或完成后执行一些逻辑。比如,我们可能需要在所有请求处理前进行权限验证,在处理后记录日志,或者在请求完成后释放资源。这些操作可以通过定义不同的拦截器来实现,每个拦截器负责一个特定的任务。
2025-06-24 18:02:05
8
转载 MySQL中的MVCC是怎么实现的
Multi-Version Concurrency Control(MVCC),翻译过来就是多版本并发控制,MVCC是为提高MySQL数据库并发性能的一个重要设计。同一行数据发生读写请求时,会通过锁来保证数据的一致性。MVCC可以在读写冲突时,让其读数据时通过快照读,而不是当前读,快照读不必加锁。在前边文章我们也介绍了MySQL中的锁机制,不熟悉的可以翻阅前边的文章。
2025-06-24 17:28:31
25
转载 函数式接口
函数式接口在java中是指:有且仅有一个抽象方法的接口,当然接口中也可以包含其他的方法(默认,静态,私有)。函数式接口的定义:csharp体验AI代码助手代码解读复制代码。
2025-06-18 14:30:58
45
转载 企业投稿怎样不容易被拒?
先在软文中提供具体的知识、经验分享内容,帮助用户解决某一方面的问题,能够有效提升文章的可读性。一些企业主在给媒体渠道投稿时,可能对媒体的征稿范围或选题要求不太了解,导致屡投屡拒。:在投稿前,可以先浏览下媒体渠道或自媒体账号往期发布的内容,模仿过稿内容来调整文章,让内容更加符合编辑的审核要求。软文发稿是当下是品牌宣传过程中一个绕不开的环节,想要稿件更容易通过,需要我们对媒体渠道的审核要求有更细致的了解。:在投稿前可以了解媒体定位,或是咨询一些专业渠道的建议,对媒体的受众群体、内容风格和报道方向做一定了解。
2025-06-17 16:04:57
10
转载 理解 Go 语言中的 select 用法
今天深入了解下Go语言中select的用法,和switch case很类似,用法比较单一,它仅能用于 信道/通道 的相关操作,每个case会对应一个通道的通信(接收或发送)过程。这时select 就会阻塞,直到有某个 case 可以命中,而如果一直没有命中,select 就会抛出 deadlock 的错误,就像下面这样子。在运行 select 时,会遍历所有)的 case 表达式,只要有一个信道有接收到数据,那么 select 就结束,所以输出如下c2 received: hello,c2接收到数据了。
2025-06-10 14:38:57
33
转载 SpringBoot之异步调用@Ansyc
java代码解读复制代码/** * @className: ThreadPoolConfig * @description: 线程池配置 * @author: change */ @Configuration public class ThreadPoolConfig { /** * 核心线程池大小 */ public static final int corePoolSize = 50;
2025-06-06 18:07:09
26
转载 Go如何进行高质量编程与性能调优实践
高质量编程实践是指在编程过程中采用一系列有效的技术、工具和方法,以确保代码的正确性、可读性、可维护性和可扩展性。
2025-05-30 17:04:34
45
转载 Java ArrayList:动态数组
数组大家都会使用,但是你并不一定真的了解Java数组,本文会和C/C++的数组进行比较,JS/PHP/Python因为这些动态语言虽然可能也叫数组,但是却不是真正意义的“数组”。先说说C/C++中数组,C/C++中只能创建静态数组(又称裸数组),sizeof可以计算数组的长度(编译期),数组的性能非常好,但是却无处不是坑。实际上,数组和类是区分对待的,创建有着自己的指令 newarray,multianewarray,获取数组的长度使用的是 arraylength指令。
2025-05-28 16:14:30
38
转载 Java反射机制及原理
相比于Java的代理,在实际项目中反射其实要更常用的多,所以学好反射不仅是能懂得框架设计的原理,更能在日常工作开发中提高编程能力。
2025-05-28 16:10:54
12
转载 Go开发遇见的一次Data Race
58 行的加锁操作则为 ,帮派保护了帮派成员免收外部帮派欺负。是直接帮派内部发生了内讧,从而导致问题无法解决。仔细看代码可以发现,加锁的时候 对象为。该代码会导致以下问题。
2025-05-26 18:05:43
18
转载 Java:面向对象
toString(): println(对象引用),当参数为对象引用时,println会调用对象的toString方法。(局部变量的作用域仅限在方法里,与访问权限的意义相矛盾)(顶级类定义出来就是被使用的,定义成其他类型就无法被使用,失去了存在的意义)1.上述4个访问权限都可以修饰类的成员,比如成员变量、成员方法、嵌套类等(即类中的一切)过度使用静态导入,读者会分不清静态成员是哪个类中的。1、子类的构造方法必须先调用父类的构造方法,再执行后面的代码。如果显式的调用 super(), 默认的就无效了。
2025-05-19 17:04:30
27
转载 如何提升在自媒体平台上的软文出稿率?
软文推广往往是多渠道分发内容,再考虑平台限制的条件下,我们可以优先选择在百家号等对原创度要求较高的平台发布。如果不依赖百度搜索引擎的流量,则可以考虑优先将软文发布在主力运营平台,同样也可以享受到原创内容的高额推流。以百家号为例,其机器查重系统会通过比对百度新闻源收录的内容,来检查一篇软文的重复率。头条号对标题党的界定更细致,例如针对一些高点击率但负面评价多的内容,大概率会触发人工复审,导致推荐中断或内容下架。头条号的查重机制也同样严格,如果我们发布的软文内容与站内已收录内容高度相似,推荐量便会大幅降低。
2025-05-13 15:12:38
35
转载 SpringBoot+MySQL实现动态定时任务
一个极简的基于springboot的动态定时任务demo,spring-context模块有对任务调度进行支持,本demo也是基于这个模块进行开发,功能相对简单,用户可以按需改造,比如添加运维界面,在界面上更加灵活的控制任务执行与更新。
2025-05-09 14:21:16
37
转载 Go实现常见的限流算法
如果需要一个简单高效的算法,可以使用固定窗口,但是它可能产生两倍的突发流量可以通过滑动窗口避免突发流量问题,但是窗口可能会掐断流量一段时间如果需要更平滑的流量,可以使用漏桶算法搭配生产者消费者模式如果能够处理一定的突发流量,可以使用令牌桶算法遇到多级限流的场景,滑动日志会更加适合。
2025-05-07 14:50:56
30
转载 Python代码设计:使用生成器替代回调函数
在大多数情况下,这是合理的,因为异常是由用户代码引起的,计算md5的代码不应该去处理用户代码的异常,但是在稳定性要求非常高的代码中,可能开发者必须处理用户的异常,这时,使用生成器来替代回调函数,则并不合理。而且,使用生成器来替代回调函数,并不是常见的做法,可能会增加理解的成本,并且写上额外的注释,不过也可以让用户的代码更加流畅,如何处理需要开发者权衡。不过如果使用for循环的方式,来让用户处理回调的数据,计算md5时就无法处理用户代码中引起的异常。
2025-04-28 16:37:23
29
转载 Python数值方法在工程和科学问题解决中的应用
数值计算是一种利用数值方法解决数学问题的计算过程。在工程和科学领域,许多问题往往难以通过解析方法求解,因此需要借助数值方法进行近似计算。数值计算涉及数值逼近、插值、数值积分、微分方程数值解等内容,是工程师和科学家日常工作中不可或缺的重要部分。NumPy:提供了多维数组对象和各种用于数组操作的函数,是Python科学计算的基础库。SciPy:建立在NumPy基础上,提供了更多高级的数学、科学和工程计算功能。Pandas:提供了数据结构和数据分析工具,适用于处理结构化数据和时间序列数据。
2025-04-24 15:08:47
51
转载 MySQL选错索引了怎么办?
在 MySQL 中一张表是可以支持多个索引的。但是,你写 SQL 语句的时候,并没有主动指定使用哪个索引。也就是说,使用哪个索引是由 MySQL 来确定的。不知道你有没有碰到过这种情况,一条本来可以执行得很快的语句,却由于 MySQL 选错了索引,而导致执行速度变得很慢?
2025-04-21 15:57:13
27
转载 在 Spring 中 Mock RestTemplate
如果我们程序中使用了 RestTemplate 进行 HTTP API 调用。通常在编写单元测试时,为了让测试可控,会将 RestTemlate 调用进行 mock,而不是进行真实的 HTTP API 调用。这里,我们将介绍两种 mock RestTemplate 调用的方法。一个是比较流行的 Mockito 模拟库,另一个是使用 Spring Test 提供的 MockRestServiceServer 模拟服务器,它可以创建模拟服务器以定义服务器交互。
2025-04-15 15:44:19
98
转载 解决MySQL自增id用尽的问题
我们项目中有一张表,用户每次点进一篇文章,就会往该表中插入一条记录id:自增主键,INT类型user_id:用户idarticle_id:该用户点击的文章id统计文章的被浏览次数(在上次统计的基础上进行增量统计,每小时统计一次)获取文章最近两天的浏览用户数因此,实际上,我们项目最多只会访问这张表的最近两天的数据的接口定义大致如下:java体验AI代码助手代码解读复制代码。
2025-03-25 18:06:06
28
转载 理解的Java中SPI机制
1、当服务提供者提供了接口的一种具体实现后,在jar包的META-INF/services目录下创建一个以“接口全限定名”为命名的文件,内容为实现类的全限定名;2、接口实现类所在的jar包放在主程序的classpath中;3、主程序通过java.util.ServiceLoder动态装载实现模块,它通过扫描META-INF/services目录下的配置文件找到实现类的全限定名,把类加载到JVM;4、SPI的实现类必须携带一个不带参数的构造方法;优点。
2025-03-20 18:02:17
40
转载 Spring事务失效,常见的情况有哪些?
spring事务实现中使用了ThreadLocal,ThreadLocal大家应该知道吧,可以实现同一个线程中数据共享,必须是同一个线程的时候,数据才可以共享,这就要求业务代码必须和spring事务的源码执行过程必须在一个线程中,才会受spring事务的控制,比如下面代码,方法内部的子线程内部执行的事务操作将不受m1方法上spring事务的控制,这个大家一定要注意。当业务方法抛出异常,spring感知到异常的时候,才会做事务回滚的操作,若方法内部将异常给吞了,那么事务无法感知到异常了,事务就不会回滚了。
2025-03-17 15:20:18
40
转载 Java对象创建和访问
如果没有,那必须先执行相应类的加载过程。如果Java堆中的内存并不是规整的,已使用的内存和空闲内存相互交错,那么虚拟机就必须维护一个列表,记录哪些内存是可用的,在给对象分配内存的时候从列表中找到一块足够大的内存分配给对象,并更新列表上的记录,这种分配方式称为空闲列表(Free List)。除了如何划分空间,还有一个问题就是对象创建在虚拟机中是非常频繁的行为,即使仅仅是修改一个指针指向的位置,在并发情况下不是线程安全的,可能出现正在给对象A分配内存,指正还没来得及修改,对象B又同时使用了原理的指针分配内存。
2025-03-11 14:31:55
29
转载 SpringBoot 实战 不同参数调用不同实现
接口java代码解读复制代码实现Ajava代码解读复制代码} }实现Bjava代码解读复制代码} }实现Cjava代码解读复制代码} }java代码解读复制代码。
2025-02-28 17:44:59
82
转载 写软文缺乏素材?这些地方不要错过
下拉框与导航栏更加倾向于素材延伸,根据我们计划寻找的软文素材,提供一些用户搜索量大的提示词。的软文素材来源,报告来源机构的权威性越强,其作为素材所能获得的认可度也就越高。但需要注意的是,由于社交网站的信息来源于个人,真实性不一定有保障,并且可能会涉及隐私、版权问题。根据软文内容的不同,我们可以灵活选用这些性质不同的素材。通过库中收录的热点内容,我们可以比较清晰地把握对应软文平台在近期内热度较高的话题,以及推流情况。除了作为软文素材外,热文库中热文的标题、文章结构以及写作方式等,都可以作为我们的参考对象。
2025-02-27 17:26:11
46
转载 java中如何实现单链表反转
准备一个由DataNode组成的单向链表,DataNode如下:csharp代码解读复制代码构造链表ini代码解读复制代码运行main方法,即构造了一个包含10个node节点的单链表。rust代码解读复制代码。
2025-02-26 15:06:59
30
转载 springBoot集成websocket实时消息推送
WebSocket是一种在Web应用程序中实现双向通信的协议。它允许在客户端和服务器之间建立持久性的连接,并支持双向数据传输,实现了实时、低延迟的通信。
2025-02-24 15:59:36
147
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人