在一个应用中有2个JSP,横线处可以填入()。
a.jsp:
<%
______.setAttribute("accp","accp");
%>
b.jsp:
<%= ______.getAttribute("accp") %>A  session、 session
B  application、 application
C  request、 request
D  application、 session

解决方案 »

  1.   

    你看看response、request、session、application吧
      

  2.   

    因为存在request中,只在一次请求内有效,第二次请求是取不到值的。
      

  3.   

    C 其实当然是有可能取出值的,因为只是说明了2个JSP,并没有说明之间关系。如果a.jsp中后面还有forword或者include  b.jsp,则b.jsp中仍然可以取出值
    所以C是可能正确的答案,你原来的答案并不正确!
      

  4.   

    属性存储范围从小到大:page,request,session,application
    page:只在当前页面
    request:同一个请求,可能不同页面,假设request从A页面转发到B页面也是可以的,因为是同一个请求
    session:同一次会话,可能是不同页面,不同请求,只要是一次会话中即可
    application:同一个应用上下文,只要是这个应用范围内的,任何jsp或是servlet都可以访问的到,可以使不同请求,不同会话题目中只说明是两个jsp,并没有指出请求是转发到b.jsp的,所以我们没法子说在b.jsp中一定能取出a.jsp中“accp”。所以C选项不能选。
    这题考察的就是属性存储作用域的问题。