×

程序员做完这阿里巴巴万能Java面试题,才有惊无险通过第二天笔试!

96
稳稳的幸福y
2017.08.12 21:58* 字数 978

java面试题一:简单说下HibernateIbatis区别,性能谁会更高一些
Hibernate偏向对象操作达到数据库相关操作的目的;但是ibatis更偏向于sql语句的优化。

Hibernate复杂,难学;ibatis简单易学。

Hibernate的使用的查询语句是自己的hql,而ibatis则是标准的sql语句。

而在性能这方面:
同样的需求下,由于hibernate可以自动生成hql语句,而ibatis需要手动写sql语句,此时采用Hibernate的效率高于ibatis。

如果系统数据处理量巨大,性能要求极为苛刻时,往往需要人工编写高性能的sql语句或存错过程,此时ibatis具有更好的可控性,因此性能优于Hibernate

Java面试题二:StringBuffer,String, StringBuilder区别是什么?而String又为什么是不可变的?
String是字符串常量,StringBuffer和StringBuilder都是字符串变量。后两者的字符内容可变,而前者创建后内容不可变。

StringBuffer是线程安全的,而StringBuilder是非线程安全的。

String不可变是因为在JDK中String类被声明为一个final类。

java面试题三:TomcatApacheJBoss的区别?
Apache解析静态的html文件;Tomcat可解析jsp动态页面、也可充当servlet容器。

Apache是Http服务器,Tomcatweb服务器JBoss是应用服务器。


java面试题四:HashMap,TreeMap,HashTable的区别?
HashTable不允许<键,值>有空值,HashMap允许<键,值>有空值。

HashTable线程同步,但是HashMap非线程同步。

HashTable中hash数组的默认大小是11,增加方式的old*2+1,HashMap中hash数组的默认大小是16,增长方式一定是2的指数倍。

TreeMap能够把它保存的记录根据键排序,默认是按升序排序。

HashTable使用Enumeration,HashMap使用Iterator。

java面试题五:Servlet的生命周期
Servlet类加载-->实例化-->服务-->销毁


java面试题六:Session, Cookie区别
Session、Cookie都有失效时间,过期后会自动删除,减少系统开销。

Session中保存的是对象,Cookie中保存的是字符串。

用户可以通过浏览器设置决定是否保存Cookie,而不能决定是否保存Session,因为Session是由服务器端维护的。

Session由应用服务器维护的一个服务器端的存储空间;Cookie是客户端的存储空间,由浏览器维护。

Session和Cookie不能跨窗口使用,每打开一个浏览器系统会赋予一个SessionID,此时的SessionID不同,若要完成跨浏览器访问数据,可以使用 Application。

1、具有1-5工作经验的,面对目前流行的技术不知从何下手,需要突破技术瓶颈的可以加。2、在公司待久了,过得很安逸,但跳槽时面试碰壁。需要在短时间内进修、跳槽拿高薪的可以加。3、如果没有工作经验,但基础非常扎实,对java工作机制,常用设计思想,常用java开发框架掌握熟练的,可以加。4、觉得自己很牛B,一般需求都能搞定。但是所学的知识点没有系统化,很难在技术领域继续突破的可以加。5. 群号:高级架构群 647631030点击链接加入群【JAVA高级开发】:https://jq.qq.com/?_wv=1027&k=4E1FE5I备注好信息!6.阿里Java高级大牛直播讲解知识点,分享知识,多年工作经验的梳理和总结,带着大家全面、科学地建立自己的技术体系和技术认知!

Paste_Image.png

微信搜索:JAVA高级架构
传道授业解惑
架构资料,分享架构知识。

JAVA
Web note ad 1