
java
文章平均质量分 96
M762B
这个作者很懒,什么都没留下…
展开
-
Java面试准备(六)——Redis
官网 Documentation | Redis本地缓存位于应用内部,和应用存在同一个进程内部。请求本地缓存的速度非常快,不存在额外的网络开销JDK自带的 HashMap 和 ConcurrentHashMapGuava Cache 和 Spring Cache(Guava用的更多一点)后起之秀 Caffeine分布式缓存脱离于应用独立存在,多个应用可直接的共同使用同一个分布式缓存服务缓存服务可以部署在一台单独的服务器上,即使同一个相同的服务部署在多台机器上,也是使用的同一份缓存单独的分布式缓存性能、容量和原创 2022-12-05 22:43:00 · 1455 阅读 · 1 评论 -
Java面试准备(五)——MySQL
连接器连接器主要和身份认证和权限相关的功能相关,就好比一个级别很高的门卫一样。主要负责用户登录数据库,进行用户的身份认证,包括校验账户密码,权限等操作,如果用户账户密码已通过,连接器会到权限表中查询该用户的所有权限,之后在这个连接里的权限逻辑判断都是会依赖此时读取到的权限数据。即后续只要这个连接不断开,即使管理员修改了该用户的权限,该用户也不受影响。查询缓存(MySQL 8.0 版本后移除)查询缓存主要用来缓存我们所执行的 SELECT 语句以及该语句的结果集。原创 2022-11-21 10:15:09 · 1691 阅读 · 0 评论 -
Java面试准备(四)——Java8特性
函数式接口,就是适用于函数式编程场景的接口。【定义】函数式接口在java中是指有且只有一个抽象方法(但可以有多个非抽象方法)的接口, 所以又叫SAM接口(Single Abstract Method Interface)。Java 8增加了**@FunctionalInterface注解来标注函数式接口**。使用@FunctionalInterface注解标注的接口必须是函数式接口,也就是说该接口中只能声明一个抽象方法,如果声明多个抽象方法就会报错。原创 2022-11-17 22:13:04 · 757 阅读 · 0 评论 -
Java面试准备(三)——Java并发
考虑到程序计数器的作用字节码解释器通过改变程序计数器来依次读取指令,从而实现代码的流程控制,如:顺序执行、选择、循环、异常处理。在多线程的情况下,程序计数器用于记录当前线程执行的位置,从而当线程被切换回来的时候能够知道该线程上次运行到哪儿了。所以,程序计数器私有主要是为了线程切换后能恢复到正确的执行位置。每个 Java 方法在执行的同时会创建一个栈帧用于存储局部变量表、操作数栈、常量池引用等信息。从方法调用直至执行完成的过程,就对应着一个栈帧在 Java 虚拟机栈中入栈和出栈的过程。原创 2022-11-15 17:52:57 · 1172 阅读 · 0 评论 -
Java面试准备(二)——Java集合
Java集合框架图Java集合类主要由两个根接口Collection和Map派生出来的,Collection派生出了三个子接口:List、Set、Queue(Java5新增的队列),因此Java集合大致也可分成List、Set、Queue、Map四种接口体系。集合中存的是对象的引用,而不是对象本身。eg:把同一个对象存在两个集合中,在一个集合中改变该对象的值,另一个集合中存的这个对象值也变了集合只能存引用数据类型,不能存基本数据类型先来看一下 接口下面的集合(List,Set,Queue)。再来看看 接原创 2022-11-09 20:48:18 · 647 阅读 · 0 评论 -
Java面试准备(一)——Java基础
在 Java 中,JVM 可以理解的代码就叫做字节码(即扩展名为.class的文件),它不面向任何特定的处理器,只面向虚拟机。Java语言通过字节码的方式,在一定程度上解决了传统解释型语言执行效率低的问题,同时又保留了解释型语言可移植的特点。所以Java程序运行时比较高效,而且,由于字节码并不专对一种特定的机器,因此,Java程序无须重新编译便可在多种不同的计算机上运行。从 Java5 开始,Java 支持定义可变长参数,所谓可变长参数就是允许在调用方法时传入不定长度的参数。可变参数。原创 2022-11-06 16:37:09 · 2524 阅读 · 0 评论 -
微服务学习(一)——理解什么是微服务及微服务的技术栈
微服务是分布式架构的一种,而分布式架构就是要把服务做拆分,其中,拆分的过程中会产生各种各样的问题需要解决,而Spring Cloud仅仅解决了服务拆分时的服务治理问题,至于其他的服务拆分所产生的问题Spring Cloud并没有给出解决方案,所以微服务技术 ≠ Spring Cloud。分布式架构:就是根据业务功能对系统进行拆分,每个业务模块作为独立项目开发,称为一个服务。 松耦合,扩展性好,但架构复杂,难度大。适合大型互联网项目,例如:京东、淘宝分布式架构要考虑的问题:有众多的分布式架构实原创 2022-06-15 17:27:47 · 821 阅读 · 0 评论 -
Redis学习(一)——快速入门及使用redis
各种网站崩了的现象,由于海量用户,高并发 导致。其中罪魁祸首就是关系型数据库:用Redis来解决问题的思路:Nosql(Not-Only SQL):作为关系型数据库的补充。用内存存储;不存储关系,只存数据Nosql特征:常见的Nosql数据库:Redis、memcache、HBase、MongoDB数据间没有必然的关联关系,都是一个个key-value内部采用单线程机制进行工作redis所有的操作都是原子性的,采用单线程处理所有业务,命令是一个一个执行的,因此无需考虑并发带来的数据影响。高性能。多数据类型支原创 2022-06-11 17:16:48 · 1355 阅读 · 0 评论 -
java多线程及线程池使用
Java多线程及线程池的使用Java多线程一、Java多线程涉及的包和类二、Java创建多线程的方式三、Java线程池1. 创建线程池ThreadPoolExecutor的7个参数2. 线程池的执行流程3. 线程池的使用示例1)用java原生的线程池类 ThreadPoolExecutor2)用Spring推出的线程池工具 ThreadPoolTaskExecutor4. 获取多线程的运行结果—使用CompletableFuture1)CompletableFuture概述2)CompletableFutu原创 2022-05-25 16:50:34 · 784 阅读 · 0 评论