原理理解
文章平均质量分 74
回头看,其实过去很多死记硬背的东西,其实很好理解。
码农阿树
莫欺苗小,点滴汗水,必成大树!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
视频解析转换耗时—OpenCV优化摸索路
技术优化:从30ms到3ms的性能提升 本文记录了视频流检测项目中通过OpenCV替代Java2D实现的性能优化过程。最初方案使用BufferedImage转换每帧耗时20-30ms,成为性能瓶颈。优化思路转向OpenCV的Mat数据结构,因其原生内存管理和零拷贝优势,理论上可大幅提升效率。 在实现过程中遇到UnsatisfiedLinkError和Mat类型不兼容问题,发现Java生态中存在三种OpenCV实现:原生OpenCV、JavaCV封装和DJL集成。最终通过添加原生OpenCV依赖并正确初始化,原创 2025-10-15 12:02:36 · 765 阅读 · 0 评论 -
Java 离线视频目标检测性能优化:从 Graphics2D 到 OpenCV 原生绘图的 20 倍性能提升实战
Java视频处理性能优化实战项目需要处理用户上传的视频,通过YOLO模型检测目标后标注边界框并推流。开发阶段发现30秒视频需90秒处理,性能分析显示: 关键瓶颈:画框环节占单帧处理时间的90%,达106ms 根因分析: JavaCV的Frame与BufferedImage双重转换耗时60ms Graphics2D绘图操作耗时46ms 优化方案改用OpenCV原生绘图方法,直接操作Mat对象,避免内存转换。最终实现画框环节从106ms降至5ms原创 2025-10-14 14:06:37 · 1084 阅读 · 0 评论 -
深入理解 HashMap 的索引计算:右移与异或的作用
HashMap 是 Java 中一种高效的数据结构,通过哈希函数将键映射到数组中的索引位置,实现快速插入和查找。哈希冲突会影响性能,导致查询和插入操作的时间复杂度从 O(1) 退化为 O(n),并可能造成内存浪费。HashMap 使用链表和红黑树处理冲突,但冲突仍会显著影响性能。哈希函数的设计至关重要,特别是通过右移和异或操作混合哈希值的高位和低位,增强随机性,减少冲突。HashMap 的索引计算通过 (n - 1) & hash 实现,其中 n 是数组长度。通过右移和异或,高位信息参与索引计算..原创 2025-05-11 14:36:52 · 886 阅读 · 0 评论 -
springboot是怎么就给yml文件读取了呢??
Spring Boot 使用类结合 SnakeYAML 库来加载和解析 YAML 配置文件,并将解析后的内容作为添加到中。你可以通过@Value注解、注解或对象来访问这些配置项。这一机制使得 Spring Boot 可以灵活地管理和访问应用程序的配置信息。原创 2024-12-16 20:17:44 · 812 阅读 · 2 评论 -
Spring AOP 中的 @Around 通知执行原理
在切面方法中,我们先记录了目标方法开始执行的时间,然后调用 proceed() 方法执行目标方法,最后在目标方法执行完成后,记录了目标方法执行结束的时间,并计算了方法执行时间,最终返回方法的返回值。总之,@Around 通知是一个非常强大的通知类型,它可以在方法的执行前后、抛出异常时以及返回结果时执行一些逻辑,通过动态代理技术实现方法的拦截和控制,为我们提供了更加灵活、可扩展的切面编程能力。切面在执行 proceed() 方法时,会调用目标方法,进入目标方法的执行流程。原创 2023-07-22 17:17:29 · 2180 阅读 · 2 评论 -
#SpringBoot的登录验证
实现,而Filter是基于Servlet程序实现的,因此他可以在请求到达servlet容器之前也就是我们的web服务器之前进行拦截,也可以在请求离开容器之前进行拦截,基于servlet容器中的FilterChain机制,其可以用在任何一个框架中;,会话技术说的通俗一点就是当用户开始访问服务器资源便形成了一次会话,可是http是无状态的,那么这次请求之后当我再次·请求是需要重新登录的,,因此获得该令牌的用户再次登录之时(发起请求)就会携带这个令牌,这样服务器通过检查便会获得该用户的状态信息,实现免登录。原创 2023-07-11 19:47:46 · 381 阅读 · 1 评论 -
javaWeb中的请求与响应究竟是怎么一回事
对java的学习还是应当有个大轮廓,今天先来了解下前端请求是怎么到达的后端,后端的响应怎么响应过去的。欢迎前来讨论原创 2023-07-10 20:51:30 · 180 阅读 · 1 评论 -
抽象类和父类的区别与联系
抽象类可以被用来继承也可被用来重写方法,普通的父类也可以,那么二者有啥区别呢?初学的时候老爱纠结这东西,欢迎来讨论,接收批评!原创 2023-06-02 22:02:57 · 1103 阅读 · 0 评论 -
多态的回头理解
摘要:初学java对多态的初了解,原创 2023-06-02 21:29:25 · 154 阅读 · 0 评论 -
Spring AOP 中的 Signature 对象的理解
在上面的例子中,我们使用 getSignature() 方法获取连接点的方法签名信息,然后判断签名是否为 MethodSignature 类型,如果是,就可以使用 MethodSignature 的 getName() 方法获取方法名称,getReturnType() 方法获取方法返回类型,getParameterTypes() 方法获取方法参数类型列表等。JoinPoint 接口定义了许多方法,可以获取连接点的相关信息,其中 getSignature() 方法可以获取连接点处的方法签名信息。原创 2023-07-22 17:21:02 · 4181 阅读 · 1 评论 -
面向对象编程中多态时子类对象的内存分配、底层逻辑
在学习多态时总是纳闷父类引用为什么可以指向子类对象,它们的内存分配是怎样的,在jvm中又是怎样的,于是各大博客,视频学习平台去了解,下面是拙见,欢迎来指正原创 2023-06-02 22:22:31 · 418 阅读 · 0 评论 -
抽象类和接口的区别和联系
了解了java中抽象类与父类之间的关系,那么对于更容易混淆的接口,又有何区别呢,接口又为什么会有呢?原创 2023-06-02 22:13:59 · 127 阅读 · 0 评论
分享