06 2018 档案

摘要:rownum,rowid都叫伪列。 但是,rownum是逻辑上的编号,且其值总是从1开始,每行的rounum不是固定的。而rowid是“物理”编号。若数据库文件没有移动,则每行的 rowid一般是固定不变的。 racle中rownum用法的总结 对于 Oracle的 rownum 问题,很多资料都说 阅读全文
posted @ 2018-06-22 17:47 aspirant 阅读(5604) 评论(0) 推荐(1) 编辑
摘要:mysql的B+树索引 查找使用了二分查找,redis 跳表也使用了二分查找法,kafka查询消息日志也使用了二分查找法,二分查找法时间复杂度O(logn); 参考:redis的索引底层的 跳表原理 实现 聊聊Mysql索引和redis跳表 redis的跳表原理 时间复杂度O(logn)(阿里) 参 阅读全文
posted @ 2018-06-22 17:21 aspirant 阅读(43058) 评论(5) 推荐(24) 编辑
摘要:1.二叉树前序遍历的非递归实现 * 实现思路,先序遍历是要先访问根节点,然后再去访问左子树以及右子树,这明显是递归定义,但这里是用栈来实现的 * 首先需要先从栈顶取出节点,然后访问该节点,如果该节点不为空,则访问该节点,同时把该节点的右子树先入栈,然后 * 左子树入栈。循环结束的条件是栈中不在有节点 阅读全文
posted @ 2018-06-22 11:24 aspirant 阅读(7002) 评论(2) 推荐(0) 编辑
摘要:1.使用类构造器实例化 [默认的类构造器] 2.使用静态工厂方法实例化 3.使用实例工厂方法实例化: 在BAMS中,工作流引擎activiti的各个组件就是使用此方式实例化的。 使用工厂实例化的Bean跟普通Bean不同,其返回的对象不是指定类的一个实例,其返回的是该FactoryBean的getO 阅读全文
posted @ 2018-06-21 15:22 aspirant 阅读(5363) 评论(0) 推荐(1) 编辑
摘要:Solr和lucene区别 Lucene是一个开放源代码的全文检索引擎工具包,它不是一个完整的全文检索引擎,Lucene提供了完整的查询引擎和索引引擎,目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者以Lucene为基础构建全文检索引擎。 Solr的目标是打 阅读全文
posted @ 2018-06-21 13:54 aspirant 阅读(392) 评论(0) 推荐(0) 编辑
摘要:很多小伙伴在学习Java的时候,总是感觉Java多线程在实际的业务中很少使用,以至于不会花太多的时间去学习,技术债不断累积!等到了一定程度的时候对于与Java多线程相关的东西就很难理解,今天需要探讨的东西也是一样的和Java多线程相关的!做好准备,马上开车! 学过Java多线程的应该都知道什么是锁, 阅读全文
posted @ 2018-06-19 18:09 aspirant 阅读(1268) 评论(0) 推荐(0) 编辑
摘要:链表的翻转是程序员面试中出现频度最高的问题之一,去百度面试问了我这个问题,回来做了总结 常见的解决方法分为递归和迭代两种。最近在复习的时候,发现网上的资料都只告诉了怎么做,但是根本没有好好介绍两种方法的实现过程与原理。所以我觉得有必要好好的整理一篇博文,来帮忙大家一步步理解其中的实现细节。 我们知道 阅读全文
posted @ 2018-06-19 17:27 aspirant 阅读(1476) 评论(1) 推荐(0) 编辑
摘要:百度的面试官问 String A="ABC"; String B=new String("ABC"); 这两个值,A,B 是否相等,如果都往HashSet里面放,能放下吗? 答:(a)A==B 的判断为false; (b)A.equals(B)为true ;因为值相等,所以都往HashSet里面放不 阅读全文
posted @ 2018-06-17 16:20 aspirant 阅读(34915) 评论(9) 推荐(8) 编辑
摘要:百度的面试官问,如果让你自己设计一个IOC,和AOP,如何设计, 我把IOC的过程答出来了,但是明显不对, (1) IOC 利用了反射,自己有个id,classtype,hashmap,所有的功能都在hashmap中,然后利用反射的Class.forName把把classtype转化成类,然后利用反 阅读全文
posted @ 2018-06-15 16:37 aspirant 阅读(4286) 评论(0) 推荐(0) 编辑
摘要:爱奇艺的面试官问 (1) 线程池是如何关闭的 (2) 如何确定线程池的数量 一、线程池销毁,停止线程池 ThreadPoolExecutor提供了两个方法,用于线程池的关闭,分别是shutdown()和shutdownNow(),注意,他们都不调用stop(),仅仅调用interrrupt)(函数; 阅读全文
posted @ 2018-06-14 19:07 aspirant 阅读(1267) 评论(0) 推荐(0) 编辑
摘要:线程属于一次性消耗品,在执行完run()方法之后线程便会正常结束了,线程结束后便会销毁,不能再次start,只能重新建立新的线程对象,但有时run()方法是永远不会结束的。例如在程序中使用线程进行Socket监听请求,或是其他的需要循环处理的任务。在这种情况下,一般是将这些任务放在一个循环中,如wh 阅读全文
posted @ 2018-06-14 19:03 aspirant 阅读(1921) 评论(0) 推荐(0) 编辑
摘要:去百度面试,二面的时候 面试官问 如果我想跟踪一个请求,从接收请求,处理到返回的整个流程,有没有好的办法,后来面试官说了 Threadlocal 可以做到传递参数。 这是ThreadLocal的一个功能。很多人可能不知道,因为threadlocal 是局部变量,只要线程不销毁,就会一直存在,因此可以 阅读全文
posted @ 2018-06-14 17:04 aspirant 阅读(6736) 评论(1) 推荐(0) 编辑
摘要:我写了另一篇zookeeper选举机制的,可以参考:zookeeper 负载均衡 核心机制 包含ZAB协议(滴滴,阿里面试) 一、zookeeper 与kafka保持数据一致性的不同点: (1)zookeeper使用了ZAB(Zookeeper Atomic Broadcast)协议,保证了lead 阅读全文
posted @ 2018-06-13 17:48 aspirant 阅读(18613) 评论(1) 推荐(4) 编辑
摘要:Mysql知识实在太丰富了,前几天百度的面试官问我MySql在Repeatable Read下面是否会有幻读出现,我说按照事务的特性当然会有, 但是面试官却说 Mysql 在Repeatable Read底下 也不会发生幻读的情况,因为Mysql有间隙锁的可以防止幻读; 我一头雾水,啥叫间隙锁。以下 阅读全文
posted @ 2018-06-13 15:17 aspirant 阅读(21961) 评论(4) 推荐(7) 编辑
摘要:SOA也就是面向服务的架构,那么这个架构如何提供服务,他不是web service,但Web Service是目前最适合实现SOA的技术,Web Service.目前有三种主流的Web服务实现方式: REST:Representational State transfer 表征状态转变 (基于HTT 阅读全文
posted @ 2018-06-12 11:44 aspirant 阅读(11162) 评论(0) 推荐(2) 编辑
摘要:(1)select==>时间复杂度O(n) 它仅仅知道了,有I/O事件发生了,却并不知道是哪那几个流(可能有一个,多个,甚至全部),我们只能无差别轮询所有流,找出能读出数据,或者写入数据的流,对他们进行操作。所以select具有O(n)的无差别轮询复杂度,同时处理的流越多,无差别轮询时间就越长。 ( 阅读全文
posted @ 2018-06-11 14:38 aspirant 阅读(291700) 评论(14) 推荐(84) 编辑

点击右上角即可分享
微信分享提示