Java方向如何准备BAT技术面试答案(汇总版)
(1)JSP经编译后就变成了“类servlet”。(2)JSP由HTML代码和JSP标签构成,更擅长页面显示;Servlet更擅长流程控制。(3)JSP中嵌入JAVA代码,而Servlet中嵌入HTML代码。 55.JSP的动态include和静态include#(1)动态include用jsp:include动作实现,如 56.Struts中请求处理过程#参考文章 57.MVC概念#参考文章 58.Springmvc与Struts区别#参考文章: 59.Hibernate/Ibatis两者的区别#参考文章 60.Hibernate一级和二级缓存#参考文章 61.简述Hibernate常见优化策略#参考文章 62.Springbean的加载过程(推荐看Spring的源码)#参考文章 63.Springbean的实例化(推荐看Spring的源码)#参考文章 64.Spring如何实现AOP和IOC(推荐看Spring的源码)#参考文章 65.Springbean注入方式#参考文章 66.Spring的事务管理#这个主题的参考文章没找到特别好的,这个还可以。 67.Spring事务的传播特性#参考文章 68.springmvc原理参考文章 69.springmvc用过哪些注解#参考文章 70.Restful有几种请求#参考文章,,该篇写的比较全。 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.如何理解分布式锁#参考文章:。 75.你知道的开源协议有哪些#常见的开源协议有GPL、LGPL、BSD、Apache Licencevesion 2.0、MIT,详细内容参考文章:、。 76.json和xml区别#XML:(1)应用广泛,可扩展性强,被广泛应用各种场合;(2)读取、解析没有JSON快;(3)可读性强,可描述复杂结构。JSON:(1)结构简单,都是键值对;(2)读取、解析速度快,很多语言支持;(3)传输数据量小,传输速率大大提高;(4)描述复杂结构能力较弱。 77.设计模式#参考文章:。 78.设计模式的六大原则#参考文章。 79.用一个设计模式写一段代码或画出一个设计模式的UML#参考文章 80.高内聚,低耦合方面的理解#参考文章。 81.深度优先和广度优先算法#推荐看书籍复习!可参考文章: 82.排序算法及对应的时间复杂度和空间复杂度#推荐看书籍复习!可参考文章: 83.排序算法编码实现#参考 84.查找算法#参考 85.B+树#参考 86.KMP算法#推荐阅读数据复习!参考 87.hash算法及常用的hash算法#参考 88.如何判断一个单链表是否有环#参考文章:{{totalPage}} 89.队列、栈、链表、树、堆、图#推荐阅读数据复习! 90.linux常用命令#参考 91.如何查看内存使用情况#参考 92.Linux下如何进行进程调度#推荐阅读书籍复习,参考文章: 93.产生死锁的必要条件#参考 94.死锁预防#参考 95.数据库范式#参考 96.数据库事务隔离级别#参考 97.数据库连接池的原理#参考 98.乐观锁和悲观锁#参考 99.如何实现不同数据库的数据查询分页#参考 100.SQL注入的原理,如何预防#参考 101.数据库索引的实现(B+树介绍、和B树、R树区别)#参考文章: 102.SQL性能优化#参考文章: 103.数据库索引的优缺点以及什么时候数据库索引失效#参考文章: 104.Redis的数据类型#参考 105.OSI七层模型以及TCP/IP四层模型#参考文章: 106.HTTP和HTTPS区别#参考: 107.HTTP报文内容#参考文章: 108.get提交和post提交的区别#参考文章: 109.get提交是否有字节限制,如果有是在哪限制的#参考 110.TCP的三次握手和四次挥手#阅读 111.session和cookie的区别#参考 112.HTTP请求中Session实现原理#参考 113.redirect与forward区别#参考 114.TCP和UDP区别#参考 115.DDos攻击及预防#参考文章: (编辑:武汉站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |