摘要: Servlet生命周期分为三个阶段: 1,初始化阶段 调用init()方法 2,响应客户请求阶段 调用service()方法 3,终止阶段 调用destroy()方法Servlet初始化阶段: 在下列时刻Servlet容器装载Servlet: 1,Servlet容器启动时自动装载某... 阅读全文
posted @ 2015-11-16 22:44 剑芒 阅读(108) 评论(0) 推荐(0) 编辑
摘要: Servlet 生命周期:Servlet 加载--->实例化--->服务--->销毁。init():在Servlet的生命周期中,仅执行一次init()方法。它是在服务器装入Servlet时执行的,负责初始化Servlet 对象。可以配置服务器,以在启动服务器或客户机首次访问Servlet时装入Se... 阅读全文
posted @ 2015-11-16 22:35 剑芒 阅读(126) 评论(0) 推荐(0) 编辑
摘要: JAVA多线程和并发基础面试问答原文链接译文连接 作者:Pankaj 译者:郑旭东 校对:方腾飞多线程和并发问题是Java技术面试中面试官比较喜欢问的问题之一。在这里,从面试的角度列出了大部分重要的问题,但是你仍然应该牢固的掌握Java多线程基础知识来对应日后碰到的问题。(校对注:非常赞同这个观点)... 阅读全文
posted @ 2015-11-16 21:41 剑芒 阅读(360) 评论(0) 推荐(0) 编辑
摘要: [b]保证线程安全的三种方法:[/b]不要跨线程访问共享变量使共享变量是final类型的将共享变量的操作加上同步一开始就将类设计成线程安全的, 比在后期重新修复它,更容易.编写多线程程序, 首先保证它是正确的, 其次再考虑性能.无状态或只读对象永远是线程安全的.不要将一个共享变量裸露在多线程环境下(... 阅读全文
posted @ 2015-11-16 21:34 剑芒 阅读(482) 评论(0) 推荐(0) 编辑
摘要: 在Java中有两类线程:User Thread(用户线程)、Daemon Thread(守护线程)用个比较通俗的比如,任何一个守护线程都是整个JVM中所有非守护线程的保姆:只要当前JVM实例中尚存在任何一个非守护线程没有结束,守护线程就全部工作;只有当最后一个非守护线程结束时,守护线程随着JVM一同... 阅读全文
posted @ 2015-11-16 21:12 剑芒 阅读(846) 评论(0) 推荐(0) 编辑
摘要: 很多核心Java面试题来源于多线程(Multi-Threading)和集合框架(Collections Framework),理解核心线程概念时,娴熟的实际经验是必需的。这篇文章收集了 Java 线程方面一些典型的问题,这些问题经常被高级工程师所问到。 0.Java 中多线程同步是什么? 在多线... 阅读全文
posted @ 2015-11-16 21:01 剑芒 阅读(174) 评论(0) 推荐(0) 编辑
摘要: 英文原文:java-success.blogspot,编译:王晓杰如果你即将去一家从事大型系统研发的公司进行Java面试,不可避免的会有多线程相关的问题。下面是一些针对初学者或者新手的问题,如果你已经具备良好的基础,那么你可以跳过本文,直接尝试针对进阶水平的Java多线程编程问题及解答。问题:进程和... 阅读全文
posted @ 2015-11-16 20:35 剑芒 阅读(326) 评论(0) 推荐(0) 编辑
摘要: 集 合是编程中最常用的数据结构。而谈到并发,几乎总是离不开集合这类高级数据结构的支持。比如两个线程需要同时访问一个中间临界区(Queue),比如常会 用缓存作为外部文件的副本(HashMap)。这篇文章主要分析jdk1.5的3种并发集合类型 (concurrent,copyonright,queue... 阅读全文
posted @ 2015-11-16 20:08 剑芒 阅读(94) 评论(0) 推荐(0) 编辑
摘要: HashMap目录(?)[+]1. HashMap的数据结构数据结构中有数组和链表来实现对数据的存储,但这两者基本上是两个极端。 数组数组存储区间是连续的,占用内存严重,故空间复杂的很大。但数组的二分查找时间复杂度小,为O(1);数组的特点是:寻址容易,插入和删除困难;链表链表存储区间离散,占用内存... 阅读全文
posted @ 2015-11-16 16:20 剑芒 阅读(132) 评论(0) 推荐(0) 编辑