模拟测试题
1、 下面这句话描述了一种设计模式可能带来的好处:
对于Web应用中的到来的请求和发出的响应,这些组件可以完成预处理或后处理,如果应用需要这些组件的特定功能。能够“干净利落”地将它们插入到应用中,这里描述的是哪一种设计模式:
A.传输模式
B.拦截过滤器
C.模式—视图—控制器
D.业务委托
E.前端控制器
2、 关于jsp:useBean标准动作,以下哪些说法是正确的?
A.必须有name属性
B.scope属性默认为页面(page)作用域
C.type和class属性不能同时使用
D.只有当bean已经存在于4个JSP作用域之一时才会使用type属性
E.jsp:useBean标准动作可以用来声明在scriptlet中使用的脚本变量,如<%hod();%>
3、 给定部署描述文件的以下部分:
12. <context-param>
13. <param-name>email</param-name>
14. <param-value>foo@bar</param-value>
15. </context-param>
16. <servlet>
17. <servlet-name>a</servlet-name>
18. <servlet-class>com.bar..Foo</servlet-class>
19. <init-param>]
20. <param-name>email</param-name>
21. <param-value>baz@bar</param-value>
22. </init-param>
23. </servlet>
假设scfg是一个ServletConfig对象,sctx是一个 ServletContext对象,以下哪个说法是正确的?
A.InitParameter(“email”)会返回baz@bar
B.InitParameter(“email”)会返回foo@bar
C.会出现一个错误,因为email参数定义了两次
D.ServletContext().getInitparameter(“email”)会返回baz@bar
E.ServletContext().getInitparameter(“email”)会返回foo@bar
F.会产生一个错误,因为Servlet上下文初始化参数应当使用init-param定义而不是context-param
4、 public class DoubleTag extends SimpleTagSupport{
private String data;
public void setData(String d){data=d;}
public void dotage() throws JspException,IOException{
getJspContext().getOut().print(data + data);
}
}
以下哪个标记文件与之等价
A. ${param.data}${param.data}
B. <%@ attribute name=”data” %>
${data}${data}
C. <%@ variable name-given=”data”%>
${data}${data}
D. <%@ attribute name=”data” %>
<%Out().print(data + data%);>
E. <%@ variable name-given=”data”%>
el表达式获取session中的值<%Out().print(data + data%);>
5、 给定一个会话对象sess,它有一个名为myAttr的属性,而且有一个HttpSessionBindingEvent对象bind绑定到session。
下面哪些代码能获取myAttr?(选出所有正确的答案)
A. long myAttr = Attribute(“myAttr”);
B .object o = Attribute(“myAttr”);
C .String s = Attribute(“myAttr”);
D .object o = bind. getAttribute(“myAttr”);
E .object o = Session().getAttribute(“myAttr”);
6、 关于文档(基于XML的文档),哪些说法是正确的?
A.JSP文档必须以<jsp:root>作为顶层元素
B.下面这行代码放在文档的最上面是合法的<jsp:root xmlns: uri=Http://java.sun/JSP/Page version=”2.0”>
C.在JSP文档中,page指令使用<jsp:directive.page>定义<%@ %>定义
D.除非通过namespace属性引入一个c前缀,否则不能使用<c:forEach>标记
E.标准<%! %>语法和<jsp:declaration>都可以用于在文档中声明变量
7、 关于EL隐式对象,以下哪些说法是正确的?(选出所有正确答案)
A.${param.name}能得到参数的值
B.${inti.foo}能得到名为的上下文初始化参数的值
C.隐式对象param是一个Map,它将参数名映射到各个String参数值
D.pageContext 、param、header和cookie隐式对象都能在JSP页面的EL表达式中使用
E.page、request、session和application隐式对象都将属性名映射到相应作用域中的值
8、 给定以下JSP片段
10.
11.<%=A.b()%>
12.
13.<%--Y--%>
假设A.b()调用是合法的,这个调用返回文本test。所生成响应中的空白符,这个JSP片段会生成以下哪个HTML?
A. <!—X-->test
B. <@--X-->test<!—test-->
C. Test
D. <!—X-->test
<%--Y--%>
E. test<%--Y--%>
F. 生成的HTML为空
9、 关于Web应用中的标记库,以下哪些说法是正确的?(选出所有正确的答案。)
A. TLD文件必须放在WEB-INF/tlds/目录中
B. TLD文件可以放在WEB-INF的任何子目录中
C. TLD文件可以放在JAR文件的WEB-INF目录中
D. TLD文件可以放在JAR文件的META-INF目录中
E. JAR文件中的TLD文件必须为META-INF/taglib.tld
10、你把完成Web数据库工作的SQL源文件放在Web应用的顶层sql目录中,但不希望HTTP请求直接访问这个目录。如何配置Web应用来禁止直接请求这个目录?(选出所有正
确的答案)
A. 用一个防火墙保护服务器
B. 在部署描述文件中用一个<security-role>元素指定目录
C. 把该目录移到WEB-INF下面,WEB-INF目录下的内容不允许应用用户直接访问
D. 在部署描述文件中创建一个<security-constraint>元素,禁止访问sql目录。
11、给定:
11.<% java.util.Map map = new java.util.hashMap();
12. map.put(“a”,”1”);
13. map.put(“b”,”2”);
14. map.put(“c”,”3”);
15. request.setAttribute(“map”,map);
16. request.setAttribute(“map-index”,”b”);
17.%>
18.<%-- 在这里插入代码 --%>
如果插在第18行,以下哪个代码佥而且计算为2?
A.${map.b}
B.${map[b]}
C.${map.map-index}
D.${‘map-index’}
E.${map[‘map-index’]}
F.${map[requestScope[‘map-index’]]}
12、给定以下标记处理器类片段
11.public class WorthlessTag extends TagSupport{
12. private String x;
13. public void setX(String x) { this.x = x;}
14. public int doStartTag() throws JspException {
15. Out().print(x);}
16. catch {IOException e}{}
17. if(“x”.equals(x))
18. return SKIP_BODY;
19. else
20. return EVAL_BODY_INCLUDE;
21. }
22. public int doEndTag() throws JspException {
23. Out().print(“E”);}
24. catch {IOException e}{}
25. if(“y”.equals(x))
26. return SKIP_BODY;
27. else
28. return EVAL_PAGE;
29. }
30. }
并给定以下TLD片段:
21. <tag>
22. <name><worthless</name>
23. <tag-class&WorthLessTag</tag-class>
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论