Java面试
Java面试
Insist___
这个作者很懒,什么都没留下…
展开
-
微服务网关和服务注册中心
https://blog.csdn.net/zzhuan_1/article/details/86687815?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2allfirst_rank_v2~rank_v28-1-86687815.nonecase&utm_term=%E6%B3%A8%E5%86%8C%E4%B8%AD%E5%BF%83%E5%8C%BA%E5%88%AB%20%E7%BD%91%E5%85%B3&am原创 2020-11-03 11:17:14 · 3581 阅读 · 0 评论 -
spring boot中项目启动时,初始化方法加载参数
https://blog.csdn.net/qq_35868412/article/details/89085500原创 2020-11-03 10:50:03 · 532 阅读 · 0 评论 -
springboot 整合aop日志
文章目录简单使用2复杂应用简单使用链接里边包括自定义注解的使用2复杂应用https://blog.51cto.com/1197822/2449700原创 2020-10-30 16:42:10 · 215 阅读 · 0 评论 -
hashmap的总结
JDK1.7,HashMap采用位桶+链表。而JDK1.8中,HashMap采用位桶+链表+红黑树实现,hashMap的底层数据存储结构。hashMap实际上是一个数组,每个元素是一个链表即Node<K, V>。元素包括key和value,都是泛型的。还有一个指向下一个node的指针,这就构成了一个链表1table为空的时候,就给这个table初始化,也就是resize。这里大致说说这个resize,如果table为空,就将table初始化为一个长度为16的,负载因子为0.75的数组。一原创 2020-10-30 15:33:49 · 131 阅读 · 0 评论 -
中石衫的面试总结!!!
文章目录一条sql语句优化5 个刁钻的 String 面试题!System.currentTimeMillis()每秒上千订单的场景下,如何对分布式锁进行高并发优化?Redis 内存满了怎么办?一条sql语句优化https://blog.csdn.net/qq_42046105/article/details/1062329375 个刁钻的 String 面试题!https://blog.csdn.net/qq_42046105/article/details/105630130System.cu原创 2020-10-29 18:34:40 · 154 阅读 · 0 评论 -
多线程的理解
文章目录1 多线程2线程是不是越多越好?2.1 例子说明2.2 原因:3 线程池往下看1 多线程2线程是不是越多越好?2.1 例子说明启动:查看运行情况:2.2 原因:3 线程池往下看https://blog.csdn.net/Insist___/article/details/109362098...原创 2020-10-29 18:16:08 · 133 阅读 · 0 评论 -
线程池面试的10连问
文章目录1问题描述1 工作流程2 线程池有几种工作 队列2.1 怎么理解有界队列和无界队列3拒绝策略有何用途?4如何创建,停止线程池?为什么不建议使用executors构建线程池?4.1线程池终止4.2线程池的构建4.3为什么不建议使用executors构建线程池?5 线程池有哪些种类?各自的使用场景是什么?6线程池有哪些状态,状态的设计机制是什么?状态是如何相互切换的?6.1 线程池状态6.2线程池的 状态设计机制6.3线程池的状态切换7 谈谈线程池的使用场景?线程池为什么能提高性能?8 线程池有哪些重要原创 2020-10-29 17:19:35 · 167 阅读 · 0 评论 -
事务注解一版写在什么地方
文章目录1事务不生效2事务生效,但是不回滚3 总结1事务不生效1 本地方法不起作用,数据库仍插入了数据2 protected 不起作用,数据库仍插入了数据2事务生效,但是不回滚3 总结原创 2020-07-28 15:53:18 · 645 阅读 · 0 评论 -
多线程下读概率远远大于写概率,如何解决并发问题
文章目录11原创 2020-07-27 20:44:42 · 539 阅读 · 0 评论 -
a系统给b系统转100块钱,如如何实现?
文章目录1a系统给b系统转100块钱,如如何实现?从三个方面: 数据如何保证一致性,性能优化,cas锁1.1 数据的一致性1.2 性能优化:1.3 多个线程访问时,保证数据的幂等性1a系统给b系统转100块钱,如如何实现?从三个方面: 数据如何保证一致性,性能优化,cas锁设置数据库连接只有两个。买完商品之后,调用第三方发货。当有两个商品发货时,还有人在调用查询商品的接口,就会报500===》 没有而外的数据库连接了。1.1 数据的一致性加了transaction注解,保证了数据的一致性。虽原创 2020-07-27 16:15:28 · 782 阅读 · 0 评论 -
a服务调用b服务的多个接口,怎么使时间最短
正常的写法使穿行化: 只能等嗲用完信息接口,在调用积分接口, 时间累加可以通过使用线程,并行化,节省时间线程使用callable:因为她有返回值userInfoTask.get(). 阻塞拿结果。执行完userInfoTask.get().才能执行MoneyInfoTask.get();保证result的值都拿到了。节约时间的原因;两个接口同时执行,不会使一个接口返回后,再调另一个接口。节约了时间...原创 2020-07-27 15:19:18 · 676 阅读 · 0 评论 -
事务
文章目录1事务的隔离级别1.1Read uncommitted (读未提交):1.2 Read committed (读已提交)1.2.1 防止脏读1.2.2 不可重复读1.3 Repeatable read (可重复读)1.4 Serializable (串行化)1.51事务的隔离级别1.1Read uncommitted (读未提交):读未提交,顾名思义,就是一个事务可以读取另一个未提交事务的数据。最低级别,任何情况都无法保证。在第一个事务: 1000-50=950没提交时候,第二个事务就原创 2020-07-27 11:38:01 · 270 阅读 · 0 评论 -
1 分布式事务
事务的基本概念3 分布式事务一个本地事务就是一个jvm 事务,就是一个进程事务。如何保证多个进程事务要么都成功,要么都失败?原创 2020-06-29 00:34:28 · 134 阅读 · 0 评论 -
Java日志框架-logback的介绍及配置使用方法(纯Java工程)(转)
添加链接描述原创 2020-06-29 00:13:42 · 204 阅读 · 0 评论 -
ArrayList 扩容原理
添加链接描述1 初始化:在无参构造中,我们看到了在用无参构造来创建对象的时候其实就是创建了一个空数组,长度为0在有参构造中,传入的参数是正整数就按照传入的参数来确定创建数组的大小,否则异常2 扩容扩容的方法就是 add(E e)如果在添加的时候远数组是空的,就直接给一个10的长度,否则的话就加一当需要的长度大于原来数组长度的时候就需要扩容了,相反的则不需要扩容oldCapacity >> 1 右移运算符 原来长度的一半 再加上原长度也就是每次扩容是原来的1.5倍之前原创 2020-06-28 23:26:43 · 147 阅读 · 0 评论 -
hashmap 的put ,get
添加链接描述添加链接描述添加链接描述原创 2020-06-28 11:20:50 · 177 阅读 · 0 评论 -
Java线程池详解
1 。线程池为什么需要使用(阻塞)队列?2 线程池的几种拒绝策略https://www.cnblogs.com/luxianyu-s/p/11728057.html添加链接描述原创 2020-04-13 10:43:27 · 90 阅读 · 0 评论 -
Spring Cloud原理详解
添加链接描述原创 2020-04-13 10:32:06 · 122 阅读 · 0 评论 -
微服务架构的基础框架选择:Spring Cloud还是Dubbo?
微服务之间是如何独立通讯的spring Cloud和 Dubbo有哪些区別?(很多 面试管会问)本质区别:dubbo 是 基于 RPC 远程 过程调用cloud 是基于 http rest api 调用2或许很多人会说Spring Cloud和Dubbo的对比有点不公平,Dubbo只是实现了服务治理,而Spring Cloud下面有17个子项目(可能还会新增)分别覆盖了微服务架构下的方...原创 2020-04-13 10:07:27 · 110 阅读 · 0 评论 -
spring cloud 常见面试题 来理解微服务(通俗易懂)
添加链接描述原创 2020-04-13 09:51:06 · 254 阅读 · 0 评论 -
Spring AOP中的JDK和CGLib动态代理哪个效率更高?
我们知道Spring AOP的底层实现有两种方式:一种是JDK动态代理,另一种是CGLib的方式。添加链接描述JDK动态代理的话,他有一个限制,就是它只能为接口创建代理实例,而对于没有通过接口定义业务方法的类,如何创建动态代理实例哪?答案就是CGLib。...原创 2020-04-13 09:45:24 · 345 阅读 · 0 评论 -
jwt
1 由哪几部分组成2 算法有哪些3 使用jwt 的好处添加链接描述springboot整合token添加链接描述原创 2020-04-10 00:13:28 · 91 阅读 · 0 评论 -
dubbo的超时时间设置
添加链接描述原创 2020-04-09 23:59:05 · 1476 阅读 · 0 评论 -
@Transactional的使用
添加链接描述怎么解决:添加链接描述通过AopContext.currentProxy ()获取到本类的代理对象,再去调用就好啦。因为这个是CGLIB实现,所以要开启AOP,当然也很简单,在springboot启动类上加上注解@EnableAspectJAutoProxy(exposeProxy = true)就可以啦,这个依赖大家自行搜一下就好啦。要注意,注意,代理对象调用的方法也要是pub...原创 2020-04-09 23:38:18 · 134 阅读 · 0 评论 -
@SpringBootApplication的使用
https://www.cnblogs.com/MaxElephant/p/8108140.html原创 2020-04-09 15:43:28 · 100 阅读 · 0 评论 -
索引的本质
文章目录1 索引的本质:是数据结构,几种数据结构的比较2.B树3B+树1 索引的本质:是数据结构,几种数据结构的比较展示了一种可能的索引方式。左边是数据表,一共有两列七条记录,最左边的是数据记录的物理地址(注意逻辑上相邻的记录在磁盘上也并不是一定物理相邻的)。为了加快Col2的查找,可以维护一个右边所示的二叉查找树,每个节点分别包含索引键值和一个指向对应数据记录物理地址的指针,这样就可以运用...原创 2020-04-09 15:39:40 · 1048 阅读 · 0 评论 -
从底层原理深度剖析volatile关键字,彻底征服面试官
中包含:怎么实现可见性怎么防止指令重排序添加链接描述原创 2020-04-09 11:32:31 · 136 阅读 · 0 评论 -
深入分析Java中的关键字static
超级棒添加链接描述原创 2020-04-09 11:15:46 · 148 阅读 · 0 评论 -
分布式事务 seate
文章目录1 两个服务调用存在的问题:2 serta1 两个服务调用存在的问题:server1 服务调用server2服务时 :server1 服务报错后,数据库中却存了server2 的数据。理因server2服务的代码也回滚2 sertaTM:由他进行发起。是全局的事务管理者,会管理由他发起的所有分支事务。参考视频https://www.bilibili.com/video/B...原创 2020-04-08 20:16:08 · 1027 阅读 · 0 评论 -
动态代理
动态代理的例子:添加链接描述【好好面试】学完Aop,你却连动态代理原理都不懂?添加链接描述原创 2020-04-08 11:06:40 · 122 阅读 · 0 评论 -
redis 实现分布式锁
文章目录1 分布式场景2压测3 代码:用redis实现分布式锁4 redission 实现分布式锁1 分布式场景假如库存50个。三个用户在同一时间去买商品的话,道理上应该库存减3,为47.但是程序执行后的结果确实49。超卖了。(因为这几行代码没有原子块的方式执行,而是多个线程之间相互影响)我们进行完善一下:这个代码在单体结构开发没有问题(单体:一个项目打成war包之后,部署到一个tom...原创 2020-04-07 17:28:00 · 196 阅读 · 0 评论 -
11 redis 怎么进行模糊查询 以及常用命令
可以通过Redis中keys命令进行获取key值,具体命令格式:keys pattern文中提到redis中允许模糊查询的有3个通配符,分别是:*,?,[]其中:*:通配任意多个字符?:通配单个字符[]:通配括号内的某一个字符=======================================================================在实际项目中有可能...原创 2020-03-24 17:21:08 · 918 阅读 · 0 评论 -
10 redis
文章目录1redis的过期策略都有哪些?内存淘汰机制都有哪些?1.1 redis 过期策略是:定期删除+惰性删除。1.2 内存淘汰机制2Redis 为什么是单线程的?3为啥 redis 单线程模型也能效率这么高?41redis的过期策略都有哪些?内存淘汰机制都有哪些?1.1 redis 过期策略是:定期删除+惰性删除。1)设置过期时间我们set key的时候,都可以给一个expire ti...原创 2020-03-06 11:17:11 · 162 阅读 · 0 评论 -
9 网络/IO基础
文章目录1 HTTP协议与TCP/IP协议的关系2. 如何理解HTTP协议是无状态的3. 什么是长连接、短连接?3.1. TCP连接3.2. TCP短连接3.3. TCP长连接4. 长连接和短连接的优点和缺点5HTTPS6从游览器中输入URL到页面加载的发生了什么?71 HTTP协议与TCP/IP协议的关系HTTP的长连接和短连接本质上是TCP长连接和短连接。HTTP属于应用层协议,在传输层使...原创 2020-03-06 10:28:43 · 323 阅读 · 0 评论 -
8 jvm
文章目录1JVM运行时内存区域划分2JVM如何加载类(类的生命周期)3 类加载器4 JVM类加载机制:5 双亲委派6强引用、软引用、弱引用、虚引用7GC--原理和常见回收算法81JVM运行时内存区域划分1 Native Interface本地接口本地接口的作用是融合不同的编程语言为 Java 所用,它的初衷是融合 C/C++程序,Java 诞生的时候是 C/C++横行的时候,要想立足,必须...原创 2020-03-06 09:48:31 · 168 阅读 · 0 评论 -
7 锁机制的面试题
文章目录说说线程安全问题,什么是线程安全,如何保证线程安全2 重入锁的概念,重入锁为什么可以防止死锁3产生死锁的四个条件(互斥、请求与保持、不剥夺、循环等待)4JMM5volatile5.1 volatile 实现原理(禁止指令重排、刷新内存)6synchronized 实现原理(对象监视器)7 synchronized 与 lock 的区别8乐观锁与悲观锁说说线程安全问题,什么是线程安全,如何...原创 2020-03-05 21:04:09 · 605 阅读 · 0 评论 -
6线程的面试题
文章目录1 线程和进程的概念、并行和并发的概念2创建线程的方式及实现3进程间通信的方式4 说说 CountDownLatch、CyclicBarrier 原理和区别5关于ThreadLocal的实现原理以及ThreadLocal为什么会造成内存泄露6 线程的生命周期7线程池 以及各个参数的介绍8线程池的执行流程又是怎样的呢?9 四种常见的线程池:1 线程和进程的概念、并行和并发的概念通过上述...原创 2020-03-05 16:40:06 · 137 阅读 · 0 评论 -
4 集合
文章目录1 List 和 Set 区别2 Set和hashCode以及equals方法的联系3List 和 Map 区别4 Arraylist 与 LinkedList 区别5 HashMap 和 Hashtable 的区别6HashSet 和 HashMap 区别7 HashMap 和 ConcurrentHashMap 的区别8 HashMap 的工作原理及代码实现,什么时候用到红黑树91 ...原创 2020-03-05 11:23:51 · 370 阅读 · 0 评论 -
3hashmap的底层原理
文章目录1 底层数据结构2 HashMap的实现原理:1 底层数据结构在JDK1.6,JDK1.7中,HashMap采用位桶+链表实现,HashMap 的实例有两个参数影响其性能:“初始容量” 和 “加载因子”。初识容量是16的数组,加载因子是0.75。(当容量 是哈希表中桶的数量,初始容量 只是哈希表在创建时的容量。加载因子 是哈希表在其容量自动增加之前可以达到多满的一种尺度。)当哈希表中的...原创 2020-03-04 14:47:20 · 153 阅读 · 0 评论 -
2数据库的面试题
文章目录1 事务四大特性2 隔离级别3MYSQL的两种存储引擎区别4 什么是索引,为什么建立索引5 建立索引的优缺点:6 索引的分类7 sql 优化7.1根据性能分析,可以对sql语句进行索引优化7.2索引失效怎么避免8索引的结构91 事务四大特性 原子性,要么执行,要么不执行 隔离性,所有操作全部执行完以前其它会话不能看到过程一致性,事务前后,数据总额一致持久性,一旦事务提交,...原创 2020-02-27 11:02:15 · 255 阅读 · 0 评论