面试中经常遇到的技术问题
罗 鑫
前绪:以下总结的是在面试过程中经常遇到的技术性问题,由于笔试的技术知识比较零散,且内容较多,每个公司注重的也有很大区别,在这里就不陈述了,大家除了看老师给发的笔试资料外还可以参考我所总结的常见面试题,其实在面试的时候很多的技术性问题都是出自于笔试题目,只不过换了种问法或加以扩展,有些题目是我们未曾学到的,大家可以参照下,提前下手学习。
一.AJAX 部分
(1)Ajax 的原理和优缺点?
(2)Ajax 的应用,做过什么功能,如何实现,了解和用过什么Ajax 框架?(如DWR )
(3)普通WEB 应用于Ajax 的区别?
二.EJB 部分
(1)EJB 与JAVA BEAN的区别?
(2)EJB 是基于哪些技术实现的?并说出SessionBean 和EntityBean 的区别,StatefulBean 和StatelessBean 的区别。
(3)EJB 的角色和三个对象
(4)EJB 容器提供的服务
(5)EJB 规范规定EJB 中禁止的操作有哪些?
(6)EJB 的几种类型
三.框架部分
(1)struts1与struts2的工作机制?
(2)struts1与struts2的区别?
(3)单实例与多实例的区别?(基于上一个问题)
(4)struts 你都用过那些标签?
(5)hibernate 的工作机制?
(6)如何优化hibernate ?
(7)为什么要用hibernate ?它的优缺点是什么?
(8)hibernate 如何实现关联的?
(9)hibernate 的延迟加载是怎样实现的?
(10)hibernate 如何实现分页?
(11)Spring 的工作机制?什么是IOC ?什么是AOP ?
(12)Spring 是怎样实现声明式事务?
(13)struts 与Spring 是怎样联合使用的?
(14)struts 、hibernate 、Spring 是怎样相互配合使用的?
(15)Spring 的事物管理?(提示:包括编程式和声明式)
四.JavaScript 部分
(1)如何理解JavaScript 的面向对象?
(2)JavaScript 都有哪些内置对象和方法?
(3)你是怎样应用JavaScript 的?
(4)window.parent 与window.openner 得区别?
(5)JavaScript 中三种提示框的方式?(prompt )
(6)form 中的input 有哪些类型?各是做什么处理使用的?
(7)form 中的input 可以设置readonly 和disable ,请问这两项属性有什么区别?
(8)简述DIV 元素和SPAN 元素的区别
(9)结合text这段结构,谈谈innerHTML outerHTML innerText之间的区别
五.Oracle 数据库
(1)Oracle 用过什么函数?
(2)Oracle 用过什么(视图,索引,存储过程)?
(3)Oracle 管理过么?
(4)让你插入1000条数据你会怎么做?
(5)数据库的job 是什么来执行的?
(6)数据库分区和表空间的建立
(7)数据库的死锁举个例子?
(8)什么是绑定变量?
(9)数据库的三范式?
(10)什么是临时表,为什么要用临时表?
(11)存储过程包括哪些部分?适用于什么场合?
(12)游标的作用?
(13)数据库连接池的工作机制是什么?
(14)去掉数据库中指定表里重复的数据(如name 重复)
(15)常用操作命令要熟
(16)delete 与truncate 、drop 的区别?
六.服务器
(1)tomcat 的四种发布项目的方式?
(2)使用过Weblogic 吗?那个版本的?
(3)应用服务器有那些?
七.JAVA
(1)说一下常用过哪些设计模式?
(2)说一下工厂模式的机制?结合项目应用在哪些地方?
(3)第三方插件的作用?
(4)BS/CS的优缺点?
(5)什么是多态?
(6)什么是面向对象?
(7)接口与抽象类的区别?分别适用什么地方?
(8)解释MVC 模式?
(9)MVC1与MVC2的区别?
(10)说一下你对webservice 的理解
(11)对类有什么理解。现在咱们待的这个屋子与屋子里的门是什么关系?(类之间的关系:聚合)
(12)如何实现多线程?
(13)实现同步的方式?
(14)什么是死锁?
(15)equals 与==得区别?
(16)static 的作用?
(17)final 的作用?
(18)如何启动一个线程?
(19)servlet 中重定向与转发的区别?
(20)preparedStatement 与Statement 的区别?
(21)读写文件的时候常遇到的异常?
(22)如何实现上传与下载?
(23)表单提交方式post 与get 的区别?
(24)session 与cookie 的区别?
(25)JDBC 连接数据库
(26)什么是方法重载与覆写?
(27)String 、StringBuffer 、StringBuilder 的区别?
(28)描述一下java 中的异常,你是如何理解他的?
(29)ArrayList 、Vector 、LinkList 的存储特性和区别?
(30)你都用过哪些集合类?
(31)HashMap 与Hashtable 的区别?
(32)同步与异步的区别?
(33)try,catch,finally,throw,throws 的作用?
(34)short 类型存储几个字节?
(35)servlet 的生命周期?
(36)sleep 与wait 的区别?
(37)线程的几种状态?
(38)生成对象的3种方法
(39)以面向对象的思想怎样做游戏俄罗斯方块儿?
(40)in/exist的区别?
(41)去除文本中的非汉字
(42)如何去除一个字符串中重复的字符(不能用循环)
(43)String 类常用的方法?
(44)request 对象是什么类,继承了什么类,有哪些常用的方法?
(45)java 中的数据类型有哪几种?
八.JSP 部分
(1)JSP 中动态INCLUDE 与静态INCLUDE 的区别?
(2)JSP 的内置对象及方法
(3)JSP 和Servlet 有哪些相同点和不同点,他们之间的联系是什么?
九.其他
(1)Unix 的基本操作命令
(2)json
(3)软件工程相关知识
(4)数据结构(比较重要,在面试的时候常考)
(5)链表、队列、堆栈的区别?
(6)数组与链表的区别?
(7)数据结构二叉树方面(如二叉树的存储结构)
(8)树和图的遍历
(9)线性表,栈,队列的关系是什么?
(10)常用算法(9种排序算法要了解)
(11)文档说明书方面:概要设计包括?
(12)详细设计包括?
(13)需求分析包括?
(14)如何做需求分析?
十.项目方面
(1)你对你做的那块项目哪部分最满意?
(2)介绍一下你的项目,在项目中承担什么角色,有哪些分工,有没有完成,是怎样安排工作计划的
(3)结合项目的业务,你都用到了哪些技术?你负责的模块是怎么实现的?
(4)描述一下你做过的项目,都有什么收获?
(5)如果一个领导给你安排的工作你完成了,而且自我感觉完成得很好,同时也认为你完成的很好,但是领导对你的工作很不满意,你该怎么办?
(6)你在开发中曾经遇到的最困难的是什么?你又是怎么解决的?
(7)介绍大唐培训班(从业务与技术两个方面)
(8)你都了解哪些电信业务?说一下BOSS 系统和计费流程
(9)描述一下三户的定义与三户之间的关系?
(10)CSM 与CRM 的区别?
(11)怎么评估任务量?
(12)项目中使用过什么软件?
提示:以上所列是很多同学在面试的时候经常会遇到的一些问题,不同的公司可能注重的地方不一样,但基本上大家按照这个思路去复习和学习并掌握,找到一个好的工作是不成问题的!大家在面试的时候经常也是必须要经历的部分就是自我介绍和项目描述了,这一部分人人都要说,但也正是能够吸引面试官的地方了,所以这把部分大家要好好准备!还有,面试官一般问你的问题都是随机的,大多是从你的笔试题里出题,看看你的笔试哪里答得不好,笔试后回去赶紧复习,另外一部分面试问题就会从你的简历上出。 因为你的简历上直接写着你会什么,你会什么面试官当然就要考考你是不是真的会呢!所以简历上写的东西必须要会!