java面试题
Posted lmmblogs
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java面试题相关的知识,希望对你有一定的参考价值。
一、Servlet技术
1、什么是servlet
Sun公司定制的一种扩展web服务器端的组件规范(服务器端的Java应用程序)。具有独立于平台和协议的特性,可以生成动态的web页面,担当客户端请求与服务器端响应的中间层。
2、与CGI区别
java servlet具有更高的效率、节省资源(CGI存在于客户端请求激活的进程中,且请求被响应后被卸载,而servlet被客户端第一个请求激活后,一直运行在后台,等待处理下个请求,每个请求只是一个线程而不是进程,只有在servlet容器停止或重启时才被卸载)、更容易实现(CGI开发比较困难,Servlet继承了java易开发的特性)、具有更好的可移植性(CGI不可移植)。
3、servlet什么时候被初始化
如果没设置loadOnStartup,则在第一次被请求时实例化(servlet被实例化后,tomcat会调用init()方法初始化这个对象)
设置loadOnStartup分三种情况:
(1)loadOnStartup < 0
负数的情况下,web容器启动的时候不会做实例化,第一次被请求的时候被实例化
(2)loadOnStartup > 0
web容器启动的时候做实例化,顺序是有小到大,正整数越小的先被实例化
(3)loadOnStartup = 0
web容器启动的时候做实例化,相当于最大正整数,web启动时,最后被初始化
4、相关博文链接
https://www.cnblogs.com/disneyland/p/4692339.html servlet什么时候被实例化
https://blog.csdn.net/u012129558/article/details/52329543
https://blog.csdn.net/heyanfeng22/article/details/45898661 servlet的单例理解
以上是关于java面试题的主要内容,如果未能解决你的问题,请参考以下文章
2020年1-6月份Java面试题总结,20多类1100道面试题含答案解析