我的面试题
1、Jsp有哪些内置对象?作用分别是什么?
application对象代表应用程序上下文,它允许JSP页面与包括在同一应用程序中的任何Web组件共享信息。
Config对象允许将初始化数据传递给一个JSP页面
Exception对象含有只能由指定的JSP“错误处理页面”访问的异常数据。
Out对象代表提供输出流的访问
Page对象代表JSP页面对应的Servlet类实例
PageContext对象是Jsp页面本身的上下文,它提供唯一一组方法来管理具有不同作用域的属性
Request对象提供对Http请求数据的访问,同时还提供用于加入特定请求数据的上下文
Response对象允许直接访问HttpServletResponse对象
Session对象可能是状态管理上下文中使用最多的对话
2. JSP中动态INCLUDE与静态INCLUDE的区别?
如果文件仅仅是静态文件,那么这种包含仅仅是把包含文件的内容加到JSP文件中去,但这个被包含文件不会被JSP编译器执行。相反,如果这个被包含文件是动态的文件,那么他将被JSP编译器执行。如果是动态文件还可以用<jsp:param>传递参数
3.两种跳转方式分别是什么?有什么区别? <jsp:include page="included.jsp" flush="true">
<jsp:forward page= "nextpage.jsp"/>
<jsp:include>操作允许在请求是在现成的JSP页面里包含静态或者动态资源
<jsp:forward>操作允许将请求转发到另一个JSP、servlet或静态资源文件
4、servlet运行的生命周期图.
装载Servlet
Servlet类
Servlet初始化(调用init方法)
实例对象被回收
提供服务(调用Service方法)
销毁Servlet实例(调用destroy方法)
5、几个典型的JSP指令及各个指令的含义?
page指令:用于传递与页面相关的信息,如缓冲区信息、线程信息和出错处理信息等。
include指令:用于在页面中包含一个外部的文档。如著作权文档或者公司信息文档——把通用内容写在一个文档中,然后包含在各个页面中,比直接写在各个JSP页面中更容易维护。当然,被包含的文件也可能是另一个JSP文件。
taglib指令:用于指出页面可以调用的一个客户标识库,常用于自定义标识。