专栏首页JavaQJava研发方向如何准备BAT技术面试答案(中)

Java研发方向如何准备BAT技术面试答案(中)

抱歉来晚了!由于最近事比较多,拖了一段时间,答案本想自己写的,但是时间不允许,挤时间整理了部分答案,后面我会继续更新,谢谢关注。

51.servlet生命周期及各个方法

参考文章http://www.cnblogs.com/xuekyo/archive/2013/02/24/2924072.html

52.servlet中如何自定义filter

参考文章http://www.cnblogs.com/javawebsoa/archive/2013/07/31/3228858.html

53.JSP原理

参考文章http://blog.csdn.net/hanxuemin12345/article/details/23831645

54.JSP和Servlet的区别

(1)JSP经编译后就变成了“类servlet”。

(2)JSP由HTML代码和JSP标签构成,更擅长页面显示;Servlet更擅长流程控制。

(3)JSP中嵌入JAVA代码,而Servlet中嵌入HTML代码。

55.JSP的动态include和静态include

(1)动态include用jsp:include动作实现,如<jsp:include page="abc.jsp" flush="true" />,它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数。会先解析所要包含的页面,解析后和主页面合并一起显示,即先编译后包含。

(2)静态include用include伪码实现,不会检查所含文件的变化,适用于包含静态页面,如<%@ include file="qq.htm" %>,不会提前解析所要包含的页面,先把要显示的页面包含进来,然后统一编译,即先包含后编译。

56.Struts中请求处理过程

参考文章http://www.cnblogs.com/liuling/p/2013-8-10-01.html

57.MVC概念

参考文章http://www.cnblogs.com/scwyh/articles/1436802.html

58.Spring mvc与Struts区别

参考文章http://blog.csdn.net/tch918/article/details/38305395

参考文章http://blog.csdn.net/chenleixing/article/details/44570681

59.Hibernate/Ibatis两者的区别

参考文章http://blog.csdn.net/firejuly/article/details/8190229

60.Hibernate一级和二级缓存

参考文章http://blog.csdn.net/windrui/article/details/23165845

61.简述Hibernate常见优化策略

参考文章http://blog.csdn.net/shimiso/article/details/8819114

62.Spring bean的加载过程(推荐看Spring的源码)

参考文章http://geeekr.com/read-spring-source-1-how-to-load-bean/

63.Spring bean的实例化(推荐看Spring的源码)

参考文章http://geeekr.com/read-spring-source-two-beans-initialization/

64.Spring如何实现AOP和IOC(推荐看Spring的源码)

参考文章http://www.360doc.com/content/15/0116/21/12385684_441408260.shtml

65.Spring bean注入方式

参考文章http://blessht.iteye.com/blog/1162131

66.Spring的事务管理

这个主题的参考文章没找到特别好的,http://blog.csdn.net/trigl/article/details/50968079这个还可以。

67.Spring事务的传播特性

参考文章http://blog.csdn.net/lfsf802/article/details/9417095

68.springmvc原理

参考文章http://blog.sina.com.cn/s/blog_7ef0a3fb0101po57.html

69.springmvc用过哪些注解

参考文章http://aijuans.iteye.com/blog/2160141

70.Restful有几种请求

参考文章,http://www.infoq.com/cn/articles/designing-restful-http-apps-roth,该篇写的比较全。

71.Restful好处

(1)客户-服务器:客户-服务器约束背后的原则是分离关注点。通过分离用户接口和数据存储这两个关注点,改善了用户接口跨多个平台的可移植性;同时通过简化服务器组件,改善了系统的可伸缩性。

(2)无状态:通信在本质上是无状态的,改善了可见性、可靠性、可伸缩性.

(3)缓存:改善了网络效率减少一系列交互的平均延迟时间,来提高效率、可伸缩性和用户可觉察的性能。

(4)统一接口:REST架构风格区别于其他基于网络的架构风格的核心特征是,它强调组件之间要有一个统一的接口。

72.Tomcat,Apache,JBoss的区别

Apache:HTTP服务器(WEB服务器),类似IIS,可以用于建立虚拟站点,编译处理静态页面,可以支持SSL技术,支持多个虚拟主机等功能。

Tomcat:Servlet容器,用于解析jsp,Servlet的Servlet容器,是高效,轻量级的容器。缺点是不支持EJB,只能用于java应用。

Jboss:应用服务器,运行EJB的J2EE应用服务器,遵循J2EE规范,能够提供更多平台的支持和更多集成功能,如数据库连接,JCA等,其对Servlet的支持是通过集成其他Servlet容器来实现的,如tomcat和jetty。

73.memcached和redis的区别

(1)性能对比:由于Redis只使用单核,而Memcached可以使用多核,所以平均每一个核上Redis在存储小数据时比Memcached性能更高。而在100k以上的数据中,Memcached性能要高于Redis,虽然Redis最近也在存储大数据的性能上进行优化,但是比起Memcached,还是稍有逊色。

(2)内存使用效率对比:使用简单的key-value存储的话,Memcached的内存利用率更高,而如果Redis采用hash结构来做key-value存储,由于其组合式的压缩,其内存利用率会高于Memcached。

(3)Redis支持服务器端的数据操作:Redis相比Memcached来说,拥有更多的数据结构和并支持更丰富的数据操作,通常在Memcached里,你需要将数据拿到客户端来进行类似的修改再set回去。这大大增加了网络IO的次数和数据体积。在Redis中,这些复杂的操作通常和一般的GET/SET一样高效。所以,如果需要缓存能够支持更复杂的结构和操作,那么Redis会是不错的选择。

74.如何理解分布式锁

参考文章http://blog.csdn.net/zheng0518/article/details/51607063和http://blog.csdn.net/nicewuranran/article/details/51730131。

75.你知道的开源协议有哪些

常见的开源协议有GPL、LGPL、BSD、Apache Licence vesion 2.0、MIT,详细内容参考文章http://blog.jobbole.com/44175/、http://www.ruanyifeng.com/blog/2011/05/how_to_choose_free_software_licenses.html。

76.json和xml区别

XML:

(1)应用广泛,可扩展性强,被广泛应用各种场合;

(2)读取、解析没有JSON快;

(3)可读性强,可描述复杂结构。

JSON:

(1)结构简单,都是键值对;

(2)读取、解析速度快,很多语言支持;

(3)传输数据量小,传输速率大大提高;

(4)描述复杂结构能力较弱。

77.设计模式

参考文章http://www.cnblogs.com/beijiguangyong/archive/2010/11/15/2302807.html#_Toc281750445。

78.设计模式的六大原则

参考文章http://www.uml.org.cn/sjms/201211023.asp。

79.用一个设计模式写一段代码或画出一个设计模式的UML

参考文章http://www.cnblogs.com/beijiguangyong/archive/2010/11/15/2302807.html#_Toc281750445

80.高内聚,低耦合方面的理解

参考文章http://my.oschina.net/heweipo/blog/423235。

本文分享自微信公众号 - JavaQ(Java-Q),作者:wind瑞

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2016-08-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Java研发方向如何准备BAT技术面试答案(下)

    这部分内容比较深入,整理了一些网络文章可参考,推荐看书籍的方式去复习。 81.深度优先和广度优先算法 推荐看书籍复习!网络文章只做参考,http://blog....

    JavaQ
  • 深入理解Spring系列之八:常用的扩展接口

    Spring不仅提供了一个进行快速开发的基础框架,而且还提供了很多可扩展的接口,用于满足一些额外的开发需求,本篇将对常用的可扩展接口进行归纳总结。 1.Ini...

    JavaQ
  • Java方向如何准备BAT技术面试答案(汇总版)

    这个主题的内容之前分三个篇幅分享过,导致网络上传播的比较分散,所以本篇做了一个汇总,同时对部分内容及答案做了修改,欢迎朋友们吐槽、转发。因为篇幅长度和时间的原因...

    JavaQ
  • Java研发方向如何准备BAT技术面试答案(中)

    JavaEE: 1.servlet生命周期及各个方法 参考文章 http://www.cnblogs.com/xuekyo/archive/2013/02/2...

    zhisheng
  • webservices系列(一)——基础知识和JAX-WS入门demo

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    逝兮诚
  • VIM游戏

    http://blog.jobbole.com/18337/ http://vim-adventures.com/ ? 在线VIM大冒险 http://www....

    Albert陈凯
  • 基于select IO复用的HTTP服务器(十一)

    没想到距离上篇文章才过去仅仅半个多月就发生了这么多的事情,其之沉、其之重、其之殇,如氤氲般笼罩环绕在这片古老的大地上。钟南山眼中的泪水让我没有丝毫的心情再在文章...

    老李秀
  • IDEA license server 激活

    大数据工程师-公子
  • go http 分析

    handler 参数(w http.ResponseWriter, r *http.Request)

    solate
  • IDEA 激活方法 原

    1.在网站http://idea.lanyus.com/中获取注册码,填入Activation code中;

    wuweixiang

扫码关注云+社区

领取腾讯云代金券