- 博客(17)
- 收藏
- 关注
原创 python:模板方法模式
模板方法模式(Template Method Pattern)是一种非常经典的面向对象设计模式。父类定义一套固定的执行流程(模板),子类在不改变整体流程的情况下,重写其中的步骤。父类负责“流程”子类负责“细节”父类的前向传播会依次调用一些方法,而这些方法最终由子类来实现。
2025-11-24 23:22:28
169
原创 java:事务传播(含图解)
事务传播描述一个方法A(可能在事务中),调用方法B时,方法B可能的几种行为(加入A的事务?2. B要根据A是否在事务中,选择自己的行为,共有7种行为。4. A和B在同一个方框内,代表二者在同一个事务中。1. A调用B,A是外部函数,B是内部函数。代表事务,方框里面有A,代表A在事务中。A在事务内,挂起A所在的事务,B则。A在事务内,挂起A所在的事务,B则。A在事务内,B在当前事务中建事务;
2025-11-24 22:31:11
446
原创 springboot: Spring Boot 启动流程详解
Component@Override// 应用启动完成后执行System.out.println("应用启动完成,可以开始处理业务逻辑");简化配置:通过自动配置减少 XML 配置嵌入式容器:内置 Tomcat、Jetty 等 Web 服务器事件驱动:通过事件机制实现扩展点条件化装配:根据条件自动配置 Bean健康检查:提供完善的应用健康监控理解 Spring Boot 的启动流程对于排查启动问题、进行自定义扩展和优化应用性能都非常有帮助。
2025-11-18 17:03:56
765
原创 java:Callable 接口详解
javaCallable 的核心特点:有返回值:可以返回任意类型的结果异常处理:可以抛出受检异常,通过包装与 Future 配合:通过Future对象获取异步执行结果线程池支持:可以通过提交执行需要返回结果的异步计算并行处理大量数据需要异常处理的异步任务需要超时控制的长时间运行任务使用线程池管理 Callable 任务合理处理的阻塞和异常考虑使用进行更复杂的异步编程。
2025-11-18 16:27:20
271
原创 Java:Enum枚举 详解
Enum(枚举)就像是一个固定的"选项列表",它把一组相关的常量值组织在一起,让代码更清晰、更安全。// 定义一个星期的枚举MONDAY, // 周一TUESDAY, // 周二WEDNESDAY, // 周三THURSDAY, // 周四FRIDAY, // 周五SATURDAY, // 周六SUNDAY // 周日。
2025-11-13 21:30:51
149
原创 java:什么是持久化 Java 对象
持久化 Java 对象是指能将其状态保存到长期存储介质(数据库或文件)中,并能在程序重启后恢复使用的对象。它是“Java 对象生命周期延伸”的关键概念,常与ORM 框架(如 Hibernate、JPA)一起使用。
2025-10-23 22:09:35
400
原创 java:匿名类(匿名内部类)
匿名内部类是没有名字的内部类,它在声明的同时就创建了唯一的一个对象。由于Java不允许外部类没有名字,所以匿名类一定是内部类。核心特性🚫 没有类名🎯 随声明随创建,只有这一个对象🔒 无法重复使用,专为一次性场景设计。
2025-10-22 22:03:44
269
原创 3D人体姿态估计:detectron2安装报错 No module named ‘torch‘,但环境里有pytorch,解决方案
这串参数其实是 pip 在安装本地源码包(特别是像 Detectron2 这种大型源码项目)时非常关键的“控制选项”。“不要创建临时构建环境,直接用我当前 Anaconda 环境里的依赖(包括 torch、CUDA)。如果不加这个参数,pip 会用新的构建协议,而 setup.py 不兼容,出现报错;“别用新的方式安装可编辑包,用老版本的兼容模式(setup.py develop)。· 临时创建一个“构建环境”(隔离的临时虚拟环境);:“用兼容旧版 setup.py 的方式安装可编辑包”。
2025-10-22 17:36:18
760
原创 java:POJO、BO、VO、PO、DO、DTO分别代表什么?怎么用?
职责分离:每个对象都有自己的职责,不要用一个对象贯穿所有层。这符合软件设计的“单一职责原则”。避免“大而全”的对象:不要创建一个包含所有字段的“User”类,然后希望它在所有地方都能用。这会导致数据冗余、安全隐患(如把密码返回给前端)和强耦合。按需定义:VO、DTO 的结构应根据前端和接口的需求来灵活定义,而不是死板地对应数据库。理解本质而非记名字:在不同的公司或团队中,对这些对象的称呼可能不同(例如,有人把所有对象都叫POJO)。在不同的上下文中,使用最适合的数据模型。
2025-10-09 21:06:58
1019
原创 java:值传递,引用传递,为什么JAVA只有值传递(含图解)
特征Java实际(值传递引用)真正的引用传递传递内容引用的副本引用本身修改引用指向只影响方法内的副本影响原始引用修改对象内容会影响原始对象会影响原始对象比喻给钥匙复印件给钥匙原件。
2025-09-27 14:27:20
763
原创 java:AOP面向切面编程
AOP是什么:一种将横切关注点(日志、事务等)与核心业务逻辑分离的技术。如何实现:Spring AOP通过动态代理在运行时将切面“织入”到目标方法中。核心注解@Aspect@Pointcut@Around@Before@After等。为何需要:实现解耦、提高代码的可复用性和可维护性,让开发者能更专注于核心业务逻辑。通过AOP,我们可以以一种非常优雅和非侵入式的方式,为应用程序添加强大的功能。
2025-09-21 15:17:24
1254
2
原创 java:代理类、静态代理、动态代理
/ 1. 服务接口 (明星的工作规范)// 2. 真实对象,实现接口 (真正的明星)@Override// 模拟核心业务逻辑System.out.println("添加用户...");try {// 模拟耗时操作@Override// 模拟核心业务逻辑System.out.println("删除用户...");try {// 模拟耗时操作特性静态代理动态代理实现方式程序员手动编写代理类JDK 运行时动态生成代理类灵活性差,一个代理类只能代理一种类型。
2025-09-21 14:39:00
788
原创 java:依赖注入的三种注入方式:字段注入、构造器注入、settler方法注入
注入方式代码示例优点缺点字段注入代码极其简洁1. 不易测试(必须通过反射或启动容器来注入)2. 无法声明为final(破坏了不可变性)3. 容易导致空指针(如果容器配置错误,字段为null4. 破坏封装性(通过反射强制给私有字段赋值)Setter注入灵活性高,允许可选依赖或重新注入对象可能在Set之前被使用,导致状态不完整构造函数注入1. 强依赖性:保证对象在构造完成后就处于完全初始化的状态2. 不可变:依赖可声明为final3. 易于测试:不依赖容器,可直接通过new。
2025-09-21 14:11:53
449
原创 java:控制反转(IoC)的两种方式:依赖查找(DL)、依赖注入(DI)
实现方式描述优点缺点依赖查找 (DL)对象主动向容器请求依赖相对传统方式有一定解耦代码依赖容器API,不够纯粹,已不常用依赖注入 (DI)容器主动将依赖注入到对象中彻底解耦,代码纯净,易于测试┣ 构造函数注入通过构造函数传入依赖推荐首选。保证不可变和完全初始化参数过多时构造函数会很长┣ Setter注入通过Setter方法传入依赖灵活,适合可选依赖对象状态可能暂时不完整┗ 字段注入通过反射直接给字段赋值代码非常简洁不推荐。不易测试,不安全简单来说,
2025-09-21 14:02:18
671
原创 optitrack的motive工具导出的csv文件中的旋转代表什么
如图,是motive导出的csv文件中的人体骨骼数据,我认为它是各个关节的局部坐标和世界坐标转化的一个旋转 ,因此做了实验。图二是对各个关节的世界坐标系应用了旋转转换成局部坐标系,但转换之后也看不出个所以然来,这个旋转到底该如何应用。图一是在各个关节上显示世界坐标系。
2024-10-25 11:23:36
191
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅