- 博客(7)
- 收藏
- 关注
原创 乐观锁与悲观锁的含义与作用?
如行锁、表锁、读锁、写锁都是在操作前先上锁,Java中的synchronized和ReentrantLock等都是悲观锁的实现。每次操作数据时认为别的线程会同时修改数据,所以每次操作数据时都会上锁,别的线程想拿到这个数据就会发生线程阻塞,直到它拿到锁。,所以不会上锁,但在更新的时候会判断在此期间别的线程有没有更新过这个数据。去一家餐厅吃饭,餐厅没有空位,但大门为你敞开,你在大门内排着队。去一家餐厅吃饭,餐厅没有空位,但大门紧闭,你在大门外排着对。在操作数据时认为其它线程。(可能总结比较笼统)
2024-10-31 11:05:17
315
原创 什么是受检异常和非受检异常?
如:OOM异常属于非受检异常,因为它是由于内存不足而引起的异常与程序本身无关,以及Exception下的RuntimeException运行时异常。非受检异常:编译器不需要强制检查的异常不需要(通过try/catch进行捕捉或通过throws抛出)受检异常:表示在编译的时候强制检查的异常需要通过try/catch进行捕捉或通过throws抛出。Exception:表示程序中的异常,可能由于程序不严谨导致。Error:表示程序底层或硬件相关错误与程序本身无关。什么是受检异常和非受检异常?
2024-10-31 09:22:08
324
原创 springBoot自动配置原理
方法,这个方法经过层层调用,最终会读取META-INF目录下后缀名为imports的文件。在springBoot2.7以前读取的是spring.factories文件。读取到全类名后,会解析注册条件。注解,而EnableAutoConfiguration注解又组合了。及其衍生注解,将满足注册条件的Bean注入到IOC容器中。在项目的主启动类上添加了。注解,这个注解组合了。
2024-09-23 15:56:45
487
原创 数据库范式简易总结
例如:候选码AB,非主属性D,有AB->C,C->D则不符合3NF。在数据库中的表现:如有一个表包含学号、课程号、教师职称等字段,而教师职称是通过教师ID与教师表关联的,那么这个表就不满足3NF,因为教师职称是通过教师ID传递依赖于学号和课程号的。例如:表中的有animal(动物)列,存放数据为{老虎,猫科,肉食}则这个列里的数据可拆分出来,即无法满足第一范式不可再分的数据项。1NF第一范式:属性(原子值)不可分割,即每个字段的值必须是单一的、不可再分的数据项。3NF第三范式:不存在非主属性对候选码的。
2024-09-23 15:37:54
594
原创 postgreSQl与MySQL,和postgreSQL的特性
不支持通过在SCSI,SAM,ISCSI卷或其它共享媒体上使用,不支持RAC风格的集群,目前支持复制集群。并行查询是postgreSQL的一项功能可以设计查询计划利用多个CPU更快响应查询。MySQL: 纯关系型数据库管理系统 postgreSQL:对象关系型数据库管理系统。1.postgreSQL可以创建一个共享服务器集群?以上,均为总结,仅供参考。2.什么是并行查询?
2024-09-02 15:54:15
638
1
原创 第二弹:Java知识点+每日面试题。(锁,线程,集合,内存)
简单来说就是两个或两个以上的线程在执行过程中互相抢夺资源,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。synchronized:是Java中的关键字,是一种同步锁,可以修饰代码块、静态的方法、方法、类。lock:是J.U.C包下的一个接口,其下边有很多实现类,ReentrantLock便是一个实现类。实现方式:Lock接口是JDK1.8及以上版本提供的,而synchronized是JDK1.0及以上版本提供的。
2023-08-25 11:39:24
128
1
原创 Java基础知识点总结--每日面试题分享
equals:用来比较的是两个对象的内容是否相等,由于所有的类都是继承自java.lang.Object类的,所 以适用于所有对象,如果没有对该方法进行覆盖的话,调用的仍然是Object类中的方法,而Object 中的equals方法返回的却是==的判断。**String:**它的值被final修饰,是不可变类,因此String的线程是安全的,在三者的性能方面是最低的,String存储在字符串常量池中。**StringBuilder:**是可变类,它不是线程安全的,它是无阻塞的性能最高,它存储在堆内存中。
2023-08-24 12:40:36
118
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅