- 博客(15)
- 收藏
- 关注
原创 mysql连接查询语句
摘要:join(内连接)会穷尽两表所有匹配组合,如相同ID会生成笛卡尔积,并自动排除NULL值。leftjoin(左连接)同样处理匹配组合,但会保留左表所有记录,即使右表无匹配项也会用NULL填充。两者的核心区别在于leftjoin保证左表数据完整性,而join仅保留匹配成功的记录。
2025-10-22 18:45:01
149
原创 mysql中锁
共享锁和共享锁可以兼容1.表锁:分为共享和独占表锁,如果线程A声明了共享锁那么事务A将只能读该表,其他线程也可以读但是不能写(其他线程可以声明共享锁)。如果线程A声明独占锁,那么只有A可以读写该表。2.元数据锁:用来防止DDL(对表格结构更改,比如增加字段),和DML(crud)之间冲突。比如在DDL操作的时候会申请写锁,那么其他线程crud将被阻塞。3.意向锁:在行锁实施之前会添加表级意向锁,意向锁之间没有冲突,和行锁也没有冲突。但是只有意向共享锁和共享表锁不冲突,其他情况他们都是冲突的。
2025-08-14 21:32:53
207
原创 git使用
仓库区:存储着各个版本的信息,其中head表示当前指向的版本。可以将指向的版本提交到远端。其中在这个版本之前提交的版本都将保存,如果是之前提交的则会保存一段时间(过了这段时间会删除)。缓存区:存储head 的快照(head指向仓库区的某个版本),记录在这个版本的基础上操作。1 git的主要分区,及各个分区的作用。工作区:在电脑上显示的文件。
2025-07-20 16:46:30
97
原创 Java反射和动态代理
动态代理相当于是只需要提供一个接口和方法,而不需要这个接口的具体实现。便可以在运行时候创建一个class文件不存在的类。反射机制允许用户从配置文件中读取要反射的类和方法,但是前提是这个类项目中有这个类。动态代理可以通过配置文件来创建接口的实现类,并通过拦截的方式执行配置文件中的方法。反射可以通过配置文件动态选择类和方法,但是不能更改已经写好的方法内容.
2025-06-22 14:05:58
129
原创 jvm黑马
执行main首先初始化,会执行D。接着执行A,然后创建对象,首先执行代码块C,最后构造器D。栈中有不同方法的栈帧,每个栈帧又有局部变量表和操作数栈和帧数据构成。
2025-06-04 16:09:16
125
原创 PID自己的理解
使用PID的目的是将current(当前的位置)与expect(期望位置)相接近。假设无人机上有传感器可以检测到无人机的高度,那么对于PID的输入是current和expect。P的公式为kp*(expect-current),以无人机为例,那么输出将是螺旋桨的转速。kp参数越大,转速提升的越快,越能更快的使得expect与current值相接近。但是存在一个问题,当无人机从地面飞向期望位置的时候,难免会导致超过期望的位置(),因此可能会引起震荡。2,PID有三个方面,比例(P),积分(I),微分(D)。
2025-05-07 17:40:49
619
原创 Java细节
小数默认是double,如果float a=1.1(x)应该为float a=1.1f(x)没有默认的构造器就不能以Dog dog1=new Dog()的方式实例化类了。同一种类型可以在一个区域中如下,不同类型数据需要更换区域。没有super的话,默认在构造器第一行有(super())println(''a''+1)//字符串a1。
2025-04-18 16:56:12
199
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅