快生活 - 生活常识大全

面试重点复习大纲


  给Java新手的一些建议-面试指南
  面试重要知识点复习大纲
  一、Java基础部分 (笔试与面试都会有的)
   1.数组中的排序问题(笔试或者机试,前者可能性更大)
   2.面向对象的理解
   3.集合相关的问题,比如hashmap跟hashtable的区别。搞清楚每个集合对象的特性就欧了。
   4.多线程启动方式,以及产生死锁的原因和解决办法【多线程问题不是很常问,有精力就复习这块内容】
   5.IO流,了解常见的几个流对象以及基本的流操作即可,被机试的可能性比较小。
  二、Web基础(1年工作经验者需要重点复习的技术点)
   1.http协议(定义、常见的请求头以及响应头&lt;功能&gt;、状态码)<!--功能-->
   2.tomcat(目录结构&lt;存放的内容以及配置文件里面能做哪些工作&gt;、常见配置;有能力者可以了解一下tomcat的原理&lt;启动加载问题&gt;)<!--启动加载问题--><!--存放的内容以及配置文件里面能做哪些工作-->
   3.jdbc(编程步骤、与hibernate以及mybatis的区别)
   4.servlet(概念的理解;生命周期、线程安全问题、接口相关类型、体系结构&lt;区别&gt;、request以及response的用途、servletContext对象的功能、编码以及路径问题)<!--区别-->
   5.filter(生命周期、常见应用、dofilter里面的参数、应用场景)
   6.jsp(隐式对象、常见标签&lt;指令、动作&gt;、EL以及JSTL)<!--指令、动作-->
   7.cookie/session(概念的理解;生命周期,session创建的时期,相关方法的使用)
  三、五大框架(1年以上工作经验者需要重点复习的技术点)
  1.struts2
  (action相关的问题&lt;书写方式[区别]、接受请求参数的方式、相关配置、访问servletapi的方式&gt;;<!--书写方式[区别]、接受请求参数的方式、相关配置、访问servletapi的方式-->
  值栈相关问题&lt;定义、内部结构、如何获取值栈对象、el为什么能访问值栈中的数据&gt;;<!--定义、内部结构、如何获取值栈对象、el为什么能访问值栈中的数据-->
  struts2与springMVC的区别;
  拦截器与过滤器的区别;
  struts2工作原理&lt;执行流程&gt;)<!--执行流程-->
   2.hibernate(核心思想要了解;开发流程&lt;加载文件的过程&gt;;查询方式;如何优化;sql与hql的区别;update与saveOrUpdate的区别;get和load的区别;Java对象三种状态的特征以及转换、核心API、一级缓存和二级缓存、延迟加载)<!--加载文件的过程-->
   3.spring(springIOC和DI;生命周期;Bean注入属性的方式;aop极其相关名词解释;核心类;applicationContext与beanFactory的区别;bean实例化有哪些方式)
  4.springMVC(工作流程;与struts2的区别;乱码问题如何处理;各组件的扩展类型)
   5.mybatis(与jdbc/hibernate的区别;)
  四、脚本(此项与第五项均是需要掌握的内容、笔试题居多)
   1.JavaScript核心对象
   2.浏览器BOM对象
   3.文档对象模型DOM
   4.常见事件
   5.Ajax编程(web交互2种方式的对比)
   6.传统Ajax编程的步骤以及从服务器端返回的数据格式(之间的差别)
   7.JSON数据格式的转换操作
   8.jQuery选择器
   9.jQuery的Ajax编程(常见方法)
   10.其余的问题都是一些笔试题,让你直接写javascript代码实现某一功能
  五、数据库
  数据库这一块几乎都是一些概念性的问答题(存储过程、函数、事务、索引、触发器、视图、游标以及一些优化操作),笔试100%会出现,一般考察的都是多表联合查询
  六、人事相关(聊得愉快就行)
   1.自我介绍(注重的是你之前在公司里面工作内容,特别是最近在公司里面做的项目&lt;回答思路参考项目相关问题一&gt;)<!--回答思路参考项目相关问题一-->
   2.简单的介绍一下上一家公司的情况/评价
   3.你为什么来北京工作,怎样看待跳槽?
   4.你对我们公司了解吗?
   5.你如果有幸进入我们公司,有什么规划吗?
   6.你上一家公司的薪资大概是多少?有哪些组成部分?
   7.你有没有投其它公司?如果其它公司也给了offer,你会如何抉择?
   8.你有对象吗?打算什么时候结婚生孩子?
   9.你对薪资待遇有什么要求?能再低一点吗?
   10.你还有什么问题要问我吗?
  七、项目相关(重点讲解问题:商品管理、订单、购物车、单点登录等实现思路问题,其余问题参考文档即可)
   1.请介绍一下你最近做的这一个项目吧【思路:项目给谁做的、项目涉及的领域、系统的架构(功能&amp;技术)、系统的用途、系统的部署、使用了哪些比较新颖的技术】
   2.谈谈你对电商行业的了解【思路:电商行业的发展、行业技术特点、行业的一些概念】
   3.你这个项目大概有哪些功能,你负责了哪些核心功能?【拥有的功能尽可能说多一点,建议10个左右,自己负责的3个大(如商品管理、订单、购物车),其余的都是其他组员开发的任务】
   4.谈谈xx(具体的,比如商品管理、订单、购物车)模块/功能的实现思路?实现的过程中涉及到了哪些技术,这些技术能介绍下吗?【分享的电商项目】
   5.你们公司有多少人?有测试吗?有美工吗?整个项目组人员配置是怎么样的?项目开发的流程大概是什么样子的?【检验是否有工作经验的一个问题】
   6.这个项目使用了什么构建工具没有?有的话,多模块之间是如何划分的?为什么要这么划分?
   7.在这个项目中是如何设计商品规格的?
   8.这个系统中你是如何实现跨系统调用的?
   9.在这个项目中,CMS系统是如何设计的,简单的说一下设计思路
   10.在这个项目中,你们主要使用什么样的数据格式来进行数据的传输的?
   11.单点系统的设计思想你了解吗?他在系统架构中的作用是什么?位置如何?
   12.你们这个项目中订单ID是怎么生成的?我们公司最近打算做一个电商项目,如果让你设计这块,你会考虑哪些问题?
   13.各个服务器的时间不统一怎么办?
  14.你们线上部署时什么样的,能画一下吗?
  15.你们生产环境的服务器有多少台?
  16.你们使用什么做支付的?如果使用易宝做支付,请求超时了怎么处理?
  17.你刚才不是说付款成功后易宝会有数据返回吗?如果付款后易宝没有返回,或者返回超时了,但是钱又已经扣了,你怎么办?
  18.你们怎么做退款功能的,要多长时间才能把钱退回给用户?
   19.你购物车存cookie里边可以实现不登录就可以使用购物车,那么我现在没有登录把商品存购物车了,然后登录了,然后我换台电脑并且登录了还能不能看见我购物车的信息?如果看不到怎么做到cookie同步,就是在另外一台电脑上可以看到购物车信息
  20.如果用户一直向购物车添加商品怎么办?并且他添加一次你查询一次数据库?互联网上用户那么多,这样会对数据库造成很大压力你怎么办?
  21.购物车的设计细节问题
  八、其他技术问题(根据自己的精力和实际能力进行选取,主要是为了证明自己的技术能力强、经验足,提升薪资用的)
  1.权限控制(一般情况,在公司必须有一定工作经验的开发者才会被分配该功能模块的开发,这意味着学员在刚开始参加工作的那个项目里面绝对不能写的内容。)这里一般都会提及shiro技术,在这块需要掌握shiro相关的几个组件以及他们的调用关系,然后就是权限设计的几张数据库表(表之间的关系以及每张表里面的重要字段)
  2.搜索系统(普通的查询会让面试官问及效率问题,那么势必要提到全文检索技术,由于刚学不是很熟,根据自己掌握的情况进行选择)
   3.浏览器跨域问题(前台系统调用可以使用jsonp来实现浏览器跨域问题,去年有学员花几个小时学习这个,仅凭此技术入职8K。)
   4.webservice(该技术已有替代技术,如果不会,可以不用花时间去复习)
   5.Linux(水太深,只谈自己在项目中就部署的时候用了一下即可)
   6.redis(根据自己的能力看是否需要提及次技术,毕竟购物车的实现方式比较多。)
  成功与失败,就看你能不能找到工作!
  扫一扫 关注我们吧~
网站目录投稿:翠雪