欢迎来到天天文库
浏览记录
ID:43058888
大小:33.51 KB
页数:7页
时间:2019-09-25
《java web考试复习题库1》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1、JSP页面是如何被执行的?JSP执行效率比Servlet低吗?当客户端向一个JSP页面发出请求时,WebContainer将JSP转化成Servlet的源代码(只在第一次请求时),然后编译转化后的Servlet并加载到内存中执行,执行的结果Response到客户端。JSP只在第一次执行的时候会转化为Servlet,以后每次执行Web容器都是直接执行编译后的Servlet,所以JSP和Servlet只是在第一次执行的时候不一样,JSP慢一点,以后的执行都是相同的。2、JSP如何处理运行时异常(run-time)exceptions?可以使用页面的errorPage属
2、性捕获没有处理的运行时异常,然后自动转向到一个错误处理页面,代码如下:<%@pageerrorPage=”error.jsp”%>如果在页面请求时出现运行时异常是,以上代码会把页面转向到JSP页面error.jsp,在error.jsp里面,可以通过以下代码定义这个页面是错误处理页:<%@pageisErrorPage=”true”%>这样描述错误信息的Throwable对象就可以在error.jsp页面里面访问到。3、如果jsp表单元素的值为空,如何避免null出现在页面上?可以写一个简单的函数对空值进行处理,判断值是否为空,如果是空就返回空字符串。实例代码如下:<
3、%!Stringblanknull(Strings){return(s==null)?“”:s;}%>在你的JSP里面,可以使用以上函数输出文本框或者其他页面元素的值,实例代码如下:”>4、如何避免JSP页面自动生成session对象?为什么要这么做?在默认情况下,在对一个JSP页面发出请求时,如果session还没有建立,JSP页面会自动为请求建立一个session对象,但是session是比较消耗资源的,如果没必要保持和使用session,
4、就不应该创建session,例如一些只是用来宣传产品的网站,往往没必要使用session来保存信息,可以使用jsp页面指令session=”false”来避免JSP页面为每个请求都自动创建session.实例代码如下:<%@pagesession=”false”>5、在servlets和JSP之间能共享session对象吗?7当然可以,HttpSessionsession=request.getSession(true);session.putValue(”variable”,”value”);6、Servlet都有哪些方法?主要作用是什么?HttpServlet类包
5、含init()、destroy()、service()等方法。其中init()和destroy()方法是继承的。(1)init()方法在Servlet的生命期中,仅执行一次init()方法。它是在服务器装入Servlet时执行的。可以配置服务器,以在启动服务器或客户机首次访问Servlet时装入Servlet。无论有多少客户机访问Servlet,都不会重复执行init()。缺省的init()方法通常是符合要求的,但也可以用定制init()方法来覆盖它,典型的是管理服务器端资源。例如,可能编写一个定制init()来只用于一次装入GIF图像,改进Servlet返回GIF图
6、像和含有多个客户机请求的性能。另一个示例是初始化数据库连接。缺省的init()方法设置了Servlet的初始化参数,并用它的ServletConfig对象参数来启动配置,因此所有覆盖init()方法的Servlet应调用super.init()以确保仍然执行这些任务。在调用service()方法之前,应确保已完成了init()方法。(2)service()方法service()方法是Servlet的核心。每当一个客户请求一个HttpServlet对象,该对象的service()方法就要被调用,而且传递给这个方法一个“请求”(ServletRequest)对象和一个“响
7、应”(ServletResponse)对象作为参数。在HttpServlet中已存在service()方法。缺省的服务功能是调用与HTTP请求的方法相应的do功能。例如,如果HTTP请求方法为GET,则缺省情况下就调用doGet()。Servlet应该为Servlet支持的HTTP方法覆盖do功能。因为HttpServlet.service()方法会检查请求方法是否调用了适当的处理方法,不必要覆盖service()方法。只需覆盖相应的do方法就可以了。=当一个客户通过HTML表单发出一个HTTPPOST请求时,doPost()方法被调用。与POST请
此文档下载收益归作者所有