![](https://img-blog.csdnimg.cn/20190927151053287.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
java基础
文章平均质量分 88
java基础收录
一路向北·重庆分伦
程序界的挖坑大王
展开
-
00:面试突击题
Mysql索引数据库面试题服务优雅停机springboot----->有道云笔记springcloud-限流(gateway、sentine)常用的设计模式汇–代码书写springBean生命周期–spring相关笔记Spring和SpringMVC的区别Spring------jdk为什么只能代理接口,cglib为什么能代理接口和类Spring Cloud原理详解–Nocas、Ribbon、Feign、Hystrix简单的aop实现日志打印MyBastis如何映射,MyBa.原创 2021-08-28 22:50:54 · 388 阅读 · 1 评论 -
01:java基础-动态代理&反射
反射-动态代理原创 2024-02-28 17:02:28 · 804 阅读 · 0 评论 -
02:java基础-泛型
JAVA推出泛型以前,程序员可以构建一个元素类型为Object的集合,该集合能够存储任意的数据类型对象,而在使用该集合的过程中,需要程序员明确知道存储每个元素的数据类型,否则很容易引发ClassCastException异常。泛型方法能使方法独立于类而产生变化如果static方法要使用泛型能力,就必须使其成为泛型方法/*** 静态的泛型方法,采用多个泛型类型* @param t* @param e* @param k*/类型通配符一般是使用"?"代替具体的类型实参。原创 2024-02-29 15:57:09 · 927 阅读 · 0 评论 -
03:java基础-io
可以简单地理解为一段内存区域,某些情况下,如果一个程序频繁地操作一个资源(如文件或数据库),则性能会很低,此时为了提升性能,就可以将一部分数据暂时读入到内存的一块区域之中,以后直接从此区域中读取数据即可,因为读取内存速度会比较快,这样可以提升程序的性能。在异步 I/O 操作完成后,操作系统会通知应用程序,应用程序可以注册一个回调函数(Callback),当 I/O 操作完成时,操作系统会调用这个回调函数来处理完成的结果。当应用程序发起一个异步 I/O 请求后,操作系统会立即返回,而不会阻塞当前线程。原创 2024-03-06 16:56:23 · 1007 阅读 · 0 评论 -
04:java基础-集合
Arraylist与 LinkedList 异同1.ArrayList是实现了基于动态数组的数据结构,ArrayList实现了长度可变的数组,在内存中分配连续的空间。遍历元素和随机访问元素的效率比较高2.LinkedList基于链表的数据结构, 插入、删除元素时效率比较高;3:ArrayList和LinkedList都是List接口的实现,都存储一组不唯一,有序(插入顺序)的对象, 对元素进行添加、删除等操作。4.对于随机访问get和set,ArrayList优于LinkedList,因为Link.原创 2021-08-23 13:20:29 · 183 阅读 · 1 评论 -
05:java基础-mysql
事务是逻辑上的一组操作,要么都执行,要么都不执行。事务是最小的执行单位,不允许分割。事务的原子性确保动作要么全部完成,要么完全不起作用;执行事务前后,数据保持一致,多个事务对同一个数据读取的结果是相同的;并发访问数据库时,一个用户的事务不被其他事务所干扰,各并发事务之间数据库是独立的;一个事务被提交之后。它对数据库中数据的改变是持久的,即使数据库发生故障也不应该对其有任何影响。数据库连接本质就是一个 socket 的连接。原创 2024-03-01 17:27:19 · 1131 阅读 · 0 评论 -
06:java基础-锁&操作系统底层工作的整体认识&JMM&CPU缓存一致性协议MESI
轻量级锁能够提升同步性能依据是对与对于绝大部分锁,在整个同步周期内是不存在竞争的,没有竞争的时候,轻量级锁使用的CAS操作避免了互斥操作的开销,但是如果存在竞争的话,出来互斥量开销反而还有CAS操作的开销,反而比重量级锁性能更差,如果锁竞争激烈,那么轻量级将很快膨胀为重量级锁。轻量级锁是指当锁是偏向锁的时候,被第二个线程B所访问,此时偏向锁就会升级为轻量级锁,线程B会通过自旋的形式尝试获取锁,线程不会阻塞,从而提高性能。释放锁时,可重入锁同样先获取当前status的值,在当前线程是持有锁的线程的前提下。原创 2021-08-23 12:54:45 · 224 阅读 · 0 评论 -
07:java基础-锁之volatile&synchronized
volatile是Java虚拟机提供的轻量级的同步机制。volatile关键字有如下两个作用。原创 2024-03-06 23:51:37 · 396 阅读 · 0 评论 -
08:java基础-锁之AQS&ReentrantLock&BlockingQueue&CountDownLatch&Semapho
Exclusive-独占,只有一个线程能执行,如ReentrantLockShare-共享,多个线程可以同时执行,Semaphore/CountDownLatch同步等待队列条件等待队列不同的自定义同步器争用共享资源的方式也不同。自定义同步器在实现时只需要实现共享资源state的获取与释放方式即可,至于具体线程等待队列的维护(如获取资源失败入队/唤醒出队等),AQS已经在顶层实现好了。该线程是否正在独占资源。只有用到condition才需要去实现它独占方式。原创 2024-03-07 15:35:47 · 875 阅读 · 0 评论 -
09:java基础-HTTP面试题总结
HTTP报文由哪三部分组成?HTTP报文由起始行(start line)、头部(header)和主体(body)三部分组成,起始行是对报文进行的描述,头部包含报文的一些属性,主体包含报文的数据(可选,非必选)。HTTP报文分为哪两类?HTTP报文可以分为:请求报文(request message)和响应报文(response message)。当客户端向服务端发送请求时,就是发送请求报文;当服务端向客户端返回数据时,就是返回响应报文。Http与Https的区别:HTTP 的URL 以http://原创 2021-08-23 11:45:21 · 150 阅读 · 0 评论 -
10:java基础-线程
待学。原创 2024-03-26 15:32:03 · 173 阅读 · 0 评论 -
11:java基础-jvm
1111。原创 2024-03-26 15:32:59 · 133 阅读 · 0 评论 -
12:java基础-流式编程&函数式编程&自定义注解&设计模式
11111。原创 2024-03-26 15:34:30 · 136 阅读 · 0 评论 -
13:java基础-原子类&Unsafe类
Unsafe提供的API大致可分为内存操作、CAS、Class相关、对象操作、线程调度、系统信息获取、内存屏障、数组操作等几类,下面将对其相关方法和应用场景进行详细介绍。原创 2024-03-27 11:20:00 · 928 阅读 · 0 评论 -
14:java基础-Tomcat-Web容器
文章目录面试题Web 容器是什么?HTTP 的本质面试题Web 容器是什么?让我们先来简单回顾一下 Web 技术的发展历史,可以帮助你理解 Web 容器的由来。早期的 Web 应用主要用于浏览新闻等静态页面,HTTP 服务器(比如Apache、Nginx)向浏览器返回静态 HTML,浏览器负责解析 HTML,将结果呈现给用户。随着互联网的发展,我们已经不满足于仅仅浏览静态页面,还希望通过一些交互操作,来获取动态结果,因此也就需要一些扩展机制能够让 HTTP 服务器调用服务端程序。于是 Sun原创 2024-05-10 23:26:30 · 308 阅读 · 0 评论