Skip to main content

2 posts tagged with "java"

View All Tags

JUC

· 11 min read
ayanami

自旋锁->自旋N次(N自适应, 取决于先前历史,当前负载等)->升级为重量级锁

重量级, mutex 本质上的syscall, 轻量级, CAS去尝试拿到对象头中的锁标识字节MarkWord

更新成功说明没人抢

偏向锁: 当某个线程第一次获取锁时, 接下来都没有其他线程拿, 那这个线程后续拿锁就连CAS也不需要

无锁->偏向锁->自旋锁->重量级锁

JMM

所有可能出现竞争的变量(成员, 静态等)均在主内存

局部变量线程私有, 工作内存相互隔离, 只能通过主内存同步

volatile

需要立即看到修改的值, 每一次读取都从主线程读, 每一次写都把工作内存的值刷新到主线程

hibernate&jpa

· 13 min read
ayanami

jdbc: java database connectivity

jdbc 要先加载驱动,由各个数据库实现

jpa 通过 orm 框架生成 sql,再经过 jdbc 操作数据库

getBean 方法:

  • getBeanApplicationContext 接口中的一个方法,用于从 Spring 的 IoC 容器中显式地获取 Bean 实例。

  • 它通常在需要手动获取 Bean 时使用,比如在非 Spring 管理的类中或者在某些特定的场景下,你想要直接从容器中获取 Bean 而不是通过注入。

  • 使用 getBean 方法时,你需要知道 Bean 的名称或类型,并在调用时指定这些信息。

  • 示例代码: