1 / 13
文档名称:

面试宝典已回答.docx

格式:docx   大小:86KB   页数:13页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

面试宝典已回答.docx

上传人:taotao0a 2020/8/16 文件大小:86 KB

下载得到文件列表

面试宝典已回答.docx

相关文档

文档介绍

文档介绍:面试宝典已回答篇————————————————————————————————作者:————————————————————————————————日期: Java面试宝典(待回答篇)oracle如何实现读写分离 (1)基于RAC架构的,使用其中某个节点作为读库;(2)基于Streams数据复制技术的,实时将数据复制到另外一个库供读取;(3)使用第三方数据复制软件的,如GoldenGate(已经被Oracle收入囊中)、DSG的,也是实时复制数据到另外一个库中。(4)使用Logicalstandby技术,实时复制数据到一个库,且该库是对应用而言是只读的。说说你对排它锁,读写锁的理解 (1)排它锁,也称作独占锁,一个锁在某一时刻只能被一个线程占有,其它线程必须等待锁被释放之后才可能获取到锁。(2)读写锁拆成读锁和写锁来理解。读锁可以共享,多个线程可以同时拥有读锁,但是写锁却只能只有一个线程拥有,而且获取写锁的时候其他线程都已经释放了读锁,而且该线程获取写锁之后,其他线程不能再获取读锁在读写锁的基础上如何实现防止幻读(,也不能使用序列化的隔离级别)   线程池用过吗?newcachedThreadPool在使用过程中有什么需要注意的吗 创建一个可缓存的线程池。如果线程池的大小超过了处理任务所需要的线程,那么就会回收部分空闲(60秒不执行任务)的线程,当任务数增加时,此线程池又可以智能的添加新线程来处理任务。此线程池不会对线程池大小做限制,线程池大小完全依赖于操作系统(或者说JVM)能够创建的最大线程大小。oracle的联合主键在创建的时候有什么需要注意的吗 谈谈你对分布式的理解 分布式就是把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给许多计算机进行处理,最后把这些计算结果综合起来得到最终的结果。js写的怎么样,js是怎样实现继承的 js常用的继承方法有:原型链、借用构造函数、组合继承、原型式继承、寄生式继承、寄生组合式继承。struts Filter和***有什么区别? ***是基于java的反射机制的,而过滤器是基于函数回调。***不依赖与servlet容器,过滤器依赖与servlet容器。***只能对action请求起作用,而过滤器则可以对几乎所有的请求起作用。***可以访问action上下文、值栈里的对象,而过滤器不能访问。在action的生命周期中,***可以多次被调用,而过滤器只能在容器初始化时被调用一次抽象工厂方法和工厂方法区别是什么? 工厂方法:用来生产同一等级结构中的固定产品。(支持增加任意产品) 抽象工厂:用来生产不同产品族的全部产品。(对于增加新的产品,无能为力;支持增加产品族)在负载不能支撑的情况下,如何将redis实例从10个扩充到20个  11、说说你对ThreadLocal的理解 (1)每个线程都有自己的局部变量  每个线程都有一个独立于其他线程的上下文来保存这个变量,一个线程的本地变量对其他线程是不可见的(有前提,后面解释)(2)独立于变量的初始化副本  ThreadLocal可以给一个初始值,而每个线程都会获得这个初始化值的一个副本,这样才能保证不同的线程都有一份拷贝。(3)状态与某一个线程相关联  ThreadLocal不是用于解决共享变量的问题的,不是为了协调线程同步而存在,而是为了方便每个线程处理自己的状态而引入的一个机制,理解这点对正确使用ThreadLocal至关重要。http协议,put用过吗?讲讲,如何使用http协议传送多个文件 (1)在form中设置多个文件输入框,用数组命名他们的名字(2)在form中设置多个文件输入框,但名字不同可重入锁与syncronized区别() 完美世界: ReentrantLock除了synchronized的功能,,公平锁,绑定多个Condition.(1)等待可中断在持有锁的线程长时间不释放锁的时候,等待的线程可以选择放弃等待. tryLock(longtimeout,TimeUnitunit)(2),ReentrantLock可以通过构造函数实现公平锁.  newRenentrantLock(booleanfair)(3)绑定多个Condition通过多次newCondition可以获得多个Condition对象,(),signal();约瑟夫问题知道吗?15分钟写出来 public class RingTest{    public static void main(String[] args){