百一测评——JavaWeb_程序设计_习题参考答案(第1-6章)

  • 格式:docx
  • 大小:58.08 KB
  • 文档页数:15

职业技能题库&在线云笔试平台试卷名称:JavaWeb_程序设计_习题参考答案(第1-6章)试卷描述:JavaWeb程序设计笔试题目、JavaWeb程序设计笔试、微信考试、在线考试试卷链接:/store/open/paperInfo/43410试卷限时:50分一.多选题每题分值:2分是否题目乱序:是是否选项乱序:是是否可回溯:是难度:中1.[多选]下列选项中属于动态网站技术的是_________(多选)答:PHP/ASP/JSPA.PHPB.ASPC.JavaScriptD.JSP答案:ABD解析:PHP(Hypertext Preprocessor):超文本预处理器,其语法大量借鉴CJavAPerl等语言,只需要很少的编程知识就能使用PHP建立一个真正交互的Web站点,由于PHP开放源代码,并且是免费的,所以非常流行,是当今Internet上最为火热的脚本语言之一。

ASP(Active Server Pages)是一种类似HTML、Script与CGI结合体的技术,他没有提供自己专门的编程语言,允许用户使用许多已有的脚本语言编写ASP应用程序局限于微软的IIS,般只适用于中小型站点,但职业技能题库&在线云笔试平台目前ASP升级演变而来的支持大型网站的开发。

JSP(Java ServerPages):是基于Java Servlet 以及Java体系的Web开发技术。

能在大部分服务器上运行,而且易于维护和管理,安全性能方面也被认为是三种基本动态网站技术中最好的。

2.[多选]下列关于Servlet的编写方式正确的是______(多选)A.必须是HttpServlet的子类B.通常需要覆盖doGet() 和doPost()方法或其一C.通常需要覆盖service()方法D.通常要在web.xml文件中声明<servlet>和<servlet-mapping>两个元素答案:ABD解析:必须继承Httpservlet类,不需要覆盖servlce()方法,service()方法是Servlet接口中的方法,Servlet是HttpServlet的父类,该方法会根据请求类型选择执行doGet()或doPost()方法。

所以通常需要覆盖doGet() 和doPost()方法或其一。

3.[多选]下列关于Servlet生命周期的说法正确的是____(多选)A.构造方法只会调用一次B.init()方法只会调用一次C.service()方法在每次请求此Servlet时都会被调用D.destroy()方法在每次请求完毕时会被调用。

答案:BC解析:Servlet生命周期由servlet接口定义,每次请求会生成一个对象,所以构造方法会调用多次4.[多选]下列方式中可以执行TestServlet (路径为/test)的doPost()方法是____(多选)职业技能题库&在线云笔试平台A.在IE中直接访问http://localhost:8080/网站名/testB.<form action=”网站名/test”>提交表单C.<form action=”网站名/test”mothod=”post”>提交表单D.<form id=forma”>在JavaScript中执行下述代码Document.getElementById(“form1”). action=”/网站名/test”;Document.getElementById(“form1”).method=”post”;Document.getElementById(“form1”). submit;答案:CD解析:A在地址栏上访问是get方式B在表单里如果不写method,默认也是get方式5.[多选]下列关于Cookie的说法正确的是_____.(多选)A.Cookie保存在客户端B.Cookie可以被服务器修改C.Cookie中可以保存任意长度的文本D.浏览器可以关闭Cookie功能答案:ABD解析:Cookie是保存在客户端的,也可以被服务器修改,但是Cookie的长度是有限的,浏览器可以关闭Cookie功能。

6.[多选] HttpServletRequest的____方法可以得到会话(多选)A.getSession()B.getSession(Boolean)职业技能题库&在线云笔试平台C.getRequestSession();D.getHttpSession();答案:AB7.[多选] 下列选项中可以关闭会话的是______(多选)A.调用HttpSession的close方法B.调用HttpSession的invalidate()方法C.等待HttpSession超时D.调用HttpServletRequest的getSession(false)方法答案:ABCD解析:HttpSession的invalidate()方法,使得回话失效,同时删除属性对象等待HttpSession超时Session失效。

public HttpSession getSession();返回与这个请求关联的当前的有效的session。

如果调用这个方法时没带参数,那么在没有session与这个请求关联的情况下,将会新建一个session。

public HttpSession getSession(boolean create); 调用这个方法时带入了一个布尔型的参数,只有当这个参数为真时,session才会被建立。

HttpServletRequest的getSession(false)方法为了确保session能够被完全维持。

Servlet开发者必须在响应被提交之前调用该方法。

如果带入的参数为假,而且没有session与这个请求关联。

这个方法会返回空值。

8.[多选]下列关于ServletContext的说法正确的是_____(多选)A.一个应用对应一个ServletContextB.ServletContext的范围比Session的范围要大。

C.第一个会话在ServletContext中保存了数据,第二个会话读取不到这些数据职业技能题库&在线云笔试平台D.ServletContext使用setAttributer()和getAttribute()方法操作数据。

答案:ABD解析:Servlet上下文是运行Servlet的逻辑容器,同一个上下文中共享存有其中的信息和属性,在Servlet中定义了一个ServletContext接口,用于存取Servlet运行的环境或者上下文信息。

ServletContext对象可以通过使用ServletConfig对象的getServletContext()方法获得,在Servlet 中提供的getServletContext()方法也可是直接获得ServletContext对象。

9.[多选]关于HttpSession的getAttibute()和setAttribute()方法,正确的说法是_____(多选)A.getAttributer()方法返回类型是StringB.getAttributer()方法返回类型是ObjectC.setAttributer()方法保存数据时如果名字重复会抛出异常D.setAttributer()方法保存数据时如果名字重复会覆盖以前的数据答案:BD10.[多选]下列关于JSP执行过程的说法正确的是____ (多选)A.JSP在容器启动时会被翻译成Servlet,并编译为字节码文件。

B.JSP在第一次被请求时会被翻译成Servlet,并编译成字节码文件。

C.在第二次请求时,将不再执行翻译步骤D.如果JSP页面有错误将不再执行翻译步骤。

答案:BCD解析:JSP是一种Servlet,但是与HttpServlet的工作方式不太一样。

HttpServlet是先由源代码编译为class文件后部署到服务器下,先编译后部署。

而JSP则是先部署源代码后编译为class 文件的。

先部署后编译。

JSP会在客户端第一次请求JSP文件时被编译为HttpJspPage(接口Servlet职业技能题库&在线云笔试平台的一个子类),该类被服务器临时存放在服务器的工作目录里面。

举例说明JSP编译过程--客户端第一次请求greeting.jsp。

Tomcat首先将jsp文件转化为标准的Java源代码,greeting_jsp.java,存放在Tomcat工作目录下,并将其编译为greeting_jsp.calss,编译完后再运行class文件来响应客户端请求。

以后访问jsp时,服务器将不再重新编译JSP文件而是直接调用class文件来响应客户端请求。

11.[多选]下列JSP表达式的写法正确的是_____(多选)A.<%=”abcdefg”.length()%>B.<%=”abcedfg”+123%>C.<%=new java.util.Date()%>D.<%=this%>答案:ABCD解析:都是表达式,abcdefg是字符串,length()是求该字符串的长度,123是数字,会自动转为字符,new java. util. Date()是一个匿名对象,显示当前的系统时间。

This代表本类对象的引用变量。

其值为org . apache . jsp . prime_jsp@171194d。

12.[多选]下列page指令的使用正确的是______(多选)A.<%@ page import="java.util .* java.sql.* "%>B.<%@ page import="java.util .*, java.sql.* "%>C.<%@ page import="java.util .*;java.sql.* "%>D.%@page import="java.util .*" %;<%@page import="java.sql .*" %>答案:BD13.[多选]下列setProperty标准动作使用正确的是______(多选)职业技能题库&在线云笔试平台A.<jsp:setProperty name="id" property="name" value="name"/>B.<jsp:setProperty id="id" property="name" value="name"/>C.<jsp:setProperty name="id" property="name" value="name"/>D.<jsp:setProperty id="id" property="name" value="name"/>答案:AC解析:name指定JavaBean对象名,与userBean标准动作中的id相对应,property指定JavaBean 中需要赋值的属性名,value指定属性设置的值,参数param指定请求中的参数名(该参数可以来自于表单(URL传递参数等).14.[多选]下列属于JSP内置对象的是________(多选)A.requestB.responseC.sessionD.servletContext答案:ABC解析:JSP内置对象有9个:request、response、session、application、out、pageContext、config、page、exception.15.[多选]下列request和response内置对象的使用正确的是______(多选)A.request.getRequestDispatcher(“index.jsp”).forward();B.response.sendRedirect(“index.jsp”);C.request.getParameterValues(“name”);D.response.setContentType(“text/html;charset=gbk”);职业技能题库&在线云笔试平台 答案:BCD16.[多选] 下列关于EL的说法正确的是________A.EL可以访问所有的JSP内置对象B.EL可以读取JavaBean的属性值C.EL可以修改JavaBean的属性值D.EL可以调用JavaBean的任何方法答案:AB17.[多选] 下列EL的使用语法正确的是______(多选)A.${1+2==3?4:5}B.${+paramValues[1]}C.${someMap[var].someArray[0]}D.${someArray[“0”]答案:AB18.[多选] 关于JSTL条件标签的说法正确的是________(多选)A.单纯使用if标签可以表达if…else ….的语法结构B.when标签必须在choose标签内使用C.otherwise标签必须在choose标签内使用D.以上都不正确答案:BC解析:<c :choose>用于条件选择,和<c:when>以及<c:otherwise>一起使用职业技能题库&在线云笔试平台19.[多选]下列关于getProperty标准动作的说法正确的是_______(多选)A.当JavaBean不存在所访问的属性时,显示nullB.当JavaBean不存在所访问的属性时,发生异常C.getProperty标准动作实际上是调用对应属性的get方法D.以上都不对。