Java工程师面试经验总结

 

这是个人经历的大约10场面试的经验总结

首先是一些感触。后面会总结一些面试的问题

面试的时候不要紧张,要放松。

要自信起来和面试官交谈,不要回避面试官的眼神。

善于引导话题,给面试官介绍你在项目中是如何碰到这种问题以及你的解决方法。最好能和简历中的项目挂钩

有的面试官往往会深入询问知识的掌握程度,而且面试的时候往往会有他自己的看法。

  如果你的看法和他不一样不要起争执,依着面试官,姿态要放低,不然你肯定过不了。

如果你不知道就老老实实交待,千万不可乱说,说多很容易出错。

遇到刁难你的面试官,可以先忍耐下

但是如果他很过分,贬低你的时候,可能是想给你造成一种你不行然后不会给你高价钱的目的,这个时候如果你看出来了,看你的意愿

  如果你能接受低的工资那就和他继续,如果你不愿意可以直接反击他。

 比如面试官问完一些问题后话锋突转说我看你的项目很简单啊,我看你的水平还是一个初级等等时候

 如果你日后不想和他为伍,当场就可以给他脸色反击他。没必要都依着他。

 

下面是一些面试问题总结:

 

1--开题型

   你觉得你java的哪一块比较擅长

  他会根据你的回答继续深入问你,不问倒你不罢休

 

2--项目中问题问你

  这个时候你的简历可要派上用场了

 比如这个项目中对于多线程并发问题是如何解决的

 

3--状逼(不知道面试官自己熟悉这些项目中能用上否,了解不深入由个屁用)

  你对JVM了解吗

 谈谈JVM中的内存模型

 谈谈类的加载机制

 

4--多线程,集群(这个还有一些实际的用处)

 给你一个场景,多线程了解吗,线程池你用过吗

 对于高并发的问题你是如何解决的

使用过集群没有啊

 

5--数据库缓存

 你在项目中用过数据库缓存没有

 你了解mongodb ,redis和memcached马

 你熟悉他们的缓存吗

  设立数据库集群的时候 根据数据库的特点存放不同的业务规则数据

 redis和memcached是内存形的数据库,可以存放一些热点数据

 其他的冷点数据可以存放到mongodb或者mySql等数据库中

 

6--struts

 描述下struts的原理

struts1和struts有什么区别呢

问什么你们的项目中使用的还是struts1呢,为什么不使用这个struts2呢

 

7--spring

  spring中是如何管理事务的呢

  说说spring的原理

  说说spring的事务传播机制

  spring的AOP你是如何理解的呢

 

8--hibernate 和ibatis

  你们项目中用hibernate马

 hibernate和ibatis的区别

  如果有数据库的更换使用ibatis好还是hibernate好呢

 

9--临时给你一个项目问题场景,给出你的解决方案

  比如上亿级别的数据如何进行存储和访问

 比如一个系统,本来好好的,在加入一个新的商品之后,发现系统的性能下降了,你去调查问题和给出解决方案,给出你的思路

 

10--你熟悉设计模式码

   列出几个你熟悉的设计模式。

   单利模式中的饿汉模式和懒汉模式有一个缺点你能指出来马

   要进行消息推送的时候使用那个设计模式呢

 

11--tomacat7 和tomcat6 有什么区别吗

12--你们前端页面使用的是什么框架

   如果你说jquery,会继续深入问

 

13--Java的内存异常有几种

14--谈谈Java的集合框架

     ArrayList的内部是如何实现的

    Map的内部是如何实现的

15--java的安装目录的bin目录下你都使用过哪些命令呢

16--数据库连接池