JavaWeb部分面试题一1.说出Servlet的生命周期,并说出Servlet和CGI的区别?Web容器加载servlet并将其实例化后,servlet生命周期开始,容器运行其init措施进行servlet的初始化,祈求抵达时运行其service措施,service措施自动派遣运行于祈求对应的doXXX措施(doGet,doPost)等,当服务器决定将实例销毁的时候调用其destroy措施。与CGI的区别在与servlet处在服务器进程中,它通过多线程方式运行其service措施,一种实例可以服务于多种祈求,并且其实例一般不会销毁,而CGI对每个祈求都产生新的进程,服务完毕后就销毁,因此效率上低于servlet。2.forward和redirect的区别?forward是容器中控制权的转向,是服务器祈求资源,服务器直接访问目的地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器,浏览器主线不懂得服务器发送的内容是从哪儿来的,因此它的地址栏中还是本来的地址。redirect就是服务器端根据逻辑,发送一种状态码,告诉浏览器重新去祈求那个地址,一般来说浏览器会用刚刚祈求的所有参数重新祈求,因此session,request参数都可以获取,并且从浏览器的地址栏中可以看到跳转后的链接地址。前者愈加高效,在前者可以满足需要时,尽量使用forward()措施,也有助于隐藏实际的链接;在有些状况下,例如需要跳转到一种其他服务器上的资源,则必须使用sendRedirect()措施。3.JSP中动态include与静态include的区别?动态include用jsp:include动作实现它总是会检查所包括文献中的变化,合用于包括动态页面,并且可以带参数;静态include用include伪码实现,它不会检查所含文献的变化,合用于包括静态页面<%@includefile="included.htm"%>4.JSP的有哪些内置对象,作用分别是什么?request:表达HttpServletRequest对象,它包括了有关浏览器祈求的信息,并且提供了几种用于获取cookie,header和session数据的有用措施;response:表达HttpServletResponse对象,并提供了几种用于设置送回浏览器的响应的措施(如cookies,头信息等。)pageContext:网页的属性在这里管理;session:表达一种祈求的javax.servlet.http.HttpSession对象,session可以存储顾客的状态信息;application:表达一种javax.servlet.ServletContext对象,这有助于查找有关servlet引擎和servlet环境的信息;out:是javax.jsp.JspWriter的一种实例,并提供了几种措施使你能用于向浏览器回送输出成果;config:表达一种javax.servlet.ServletConfig对象,该对象用于存取servlet实例的初始化参数;page:表达从该页面产生的一种servlet实例;exception:针对错误网页,未捕捉的例外。5.JSP的常用指令?<%@pagelanguage="java"contentType="text/html"%><%@includefile="filename"%><%@taglibprefix="c"uri="http://...."%>6.JSP有哪些动作,作用分别是什么?JSP共有如下6种基本动作:jsp:include:在页面被祈求的时候引入一种文献;jsp:useBean:寻找或者实例化一种JavaBean;jsp:setProperty:设置JavaBean的属性;jsp:getProperty:输出某个JavaBean的属性;jsp:forward:把祈求转到一种新的页面;jsp:plugin:根据浏览器类型为Java插件生成object标识。7.GET和POST的区别?form中的get和post措施,在数据传播过程中分别对应了HTTP协议中的GET和POST措施。两者重要区别如下:①Get是用来从服务器上获得数据,而Post是用来向服务器上传递数据;②Get将表单中数据按照variable=value的形式,添加到action所指向的URL背面,并且两者使用“?”连接,而各个变量之间使用“&”连接;Post是将表单中的数据放在form的数据体中,按照变量和值相对应的方式,传递到action所指向URL;③Get是不安全的,由于在传播过程,数据被放在祈求的URL中;Post的所有操作对顾客来说都是不可见的;④Get传播的数据量小,这重要是由于受URL长度限制;而Post可以传播大量的数据,因此在上传文献只能使用Post;⑤Get限制form表单的数据集必须为ASCII字符,而Post支持整个ISO10646字符集;⑥Get是from的默认措施。8.常用的web容器和开发工具?最常用的容器包括:tomcat、weblogic...