- 博客(43)
- 收藏
- 关注
原创 Java多线程
如果你需要简单易用的同步机制,且只有简单的锁定需求足够使用。如果你需要更灵活的控制,比如尝试锁中断锁公平锁等,或者在高并发场景中需要更高的性能,则应使用Lock(如可重入锁、公平锁、中断锁可重入锁:允许同一线程多次获取同一把锁,避免死锁和递归调用的阻塞。公平锁:保证线程按请求顺序获得锁,避免线程饥饿,但可能带来性能开销。中断锁:允许线程在等待锁时响应中断,提高程序的灵活性和响应性,适用于需要快速响应的场景。什么是AQS锁?是 Java 并发包中的一个框架,用于构建锁和其他同步原语。
2025-04-25 10:04:42
718
原创 【无标题】
数据库表的设计是一个多方面的考虑过程,需要根据业务需求、数据结构、查询效率、数据一致性等多方面因素来综合决策。设计好的数据库表能够确保数据的完整性、一致性,并能支持系统高效稳定地运行。在设计过程中要注意规范化、适当使用索引、合理使用外键、考虑表的扩展性等问题。where和having的区别?WHERE和HAVING都是 SQL 中用来进行数据筛选的关键字,但它们有一些重要的区别,尤其是在它们的使用场景和作用上。1. 适用位置WHEREWHERE子句用于过滤表中的数据,它在GROUP BY子句之前执行。
2025-04-18 11:26:26
937
原创 【MySQL】
MySQL 事务的特性主要是通过 ACID 原则来保证数据的一致性、可靠性和稳定性。理解这些特性对于编写可靠的数据库应用程序至关重要,特别是在高并发和分布式系统中。事务的隔离级别和锁机制帮助管理并发执行中的数据一致性问题,而不同的隔离级别适用于不同的业务场景。详细解释一下InnoDB 存储引擎。MySQL还有其他的存储引擎吗?
2025-04-15 20:21:43
903
原创 【Spring框架】
Spring MVC的工作原理就是通过作为前端控制器,利用将请求映射到对应的Controller,然后通过传递数据给视图,通过选择合适的视图来渲染结果。最终,生成的页面会返回给客户端,完成一次HTTP请求的处理过程。Spring MVC的架构设计使得业务逻辑、控制逻辑和视图呈现逻辑得以分离,从而提供了更高的可维护性和扩展性。Spring Boot 的自动配置原理是通过启用注解,在启动时根据应用的类路径、配置属性、环境条件等自动判断是否启用某些配置。
2025-04-15 17:50:44
902
原创 【Java八股】
在Java中,如果你需要从特殊来源加载类(比如数据库、网络),可以自定义类加载器。继承自,并重写方法。@Override// 自定义加载字节码// 定义类// 通过网络或其他方式加载类的字节码// 假设加载类字节码双亲委派机制是一种为了避免类加载冲突和保证Java平台类的安全性而设计的机制。每个加载器都会把加载请求先交给父加载器,只有父加载器没有找到类时,才会自己去加载。这种机制确保了Java类的加载顺序和安全性。JVM类初始化顺序在JVM中,类的初始化是类加载过程中的一个重要步骤。
2025-04-14 21:54:40
991
原创 针对ArrayList部分源码的解读
ArrayList底层用数组来存储数据,这里的elementData是数组名,size为数组里面的元素个数。无参方法是调用数组工具类将所有数据全部拷贝一份。调用方法返回的是一个新的数组,因此,调用者可以自由地修改返回的数组。
2024-04-18 21:45:49
342
1
原创 Docker容器已成功启动,浏览器却访问不到
我在虚拟机上用docker容器启动了MySQL和nacos,但是当我使用navicat与MySQL建立连接时却一直报Timeout connection;我使用虚拟机ip地址:8848/nacos也无法访问成功。最后从主机cmd窗口ping虚拟机ip,发现无法ping通,但从虚拟机ping主机ip可以ping通。根据搜索,查看了虚拟机防火墙暴露出来的端口以及IPv4转发是否已开启,发现也没有任何问题。进一步查看网络设置发现是网卡被禁用了,启用即可。
2024-04-16 09:14:00
1648
原创 Git报错Please move or remove them before you merge.
执行完这些命令后,本地修改将被丢弃,代码会变成和远程仓库一样。
2024-04-10 19:30:00
1327
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人