1.下列不是JSP隐含变量的是______。
A、request
B、out
C、context
D、session
解析:JSP有九大隐含对象,out, request, response, config, session, application, page, pageContext, exception
2.可以在以下哪个____标记之间插入变量与方法声明?
A、<% 和 %>
B、 <%!和 %>
C、</ 和 %>
D、<% 和 !>
解析:
标签 | 作用 |
---|---|
<% %> | 可定义局部变量,编写语句,不能进行方法定义 ,也可输出内容 |
<%! %> | 可定义全局变量,方法,类 |
<%= %> | 之间插入表达式,不能是语句,主要用来输出内容 |
3.在J2EE中,在一个JSP文件中,有表达式<%=2+3 %>,它将输出______。
A、2+3
B、5
C、23
D、不会输出,因为表达式是错误的
解析:2+3是一个表达式,2+3=5,即输出结果5
4.在JSP中,以下的page指令设置了使用的脚本语言是Java,且导入了!java.rmi.*!和java.util.*
包.正确的是___
A、<%@ page Language=“Java”, import=”java.rmi.;java.uitl. ”%”>
B、<%@ page language=“Java” Import=”java.rmi.,java.uitl. ”%”>
C、<%@ page language=“Java”; import=”java.rmi.;java.uitl. ”%”>
D、<%@ page language=“Java” import=”java.rmi.* ,java.uitl.* ”%>
解析:page指令对页面的某些特征进行描述,语法格式为:
<%@ page 属性名1=“值1” 属性名2=“值2” …%> 注意:属性之间用空格表示
5.下列不属于JSP构成元素的是_____
A、脚本
B、声明
C、表达式
D、JavaScript
解析:
JSP组成元素 | 介绍 |
---|---|
模板元素 | html、xml |
注释元素 | html注释,jsp注释 等 |
指令元素 | page指令,,include指令,taglib等 |
脚本元素 | 声明,表达式,scriptlets |
动作元素 | jsp:include,jsp:forward等 |
6.在JSP中如果要导入java.io.*
包,应该使用______指令
A、page
B、include
C、taglib
D、Forward
解析:page的常用指令包括iimport 属性,其作用是导入任何类类名,包名,且Import是唯一可以声明多次的page属性,可以一次引用多个类,中间用英文逗号隔开
7.在JSP中,page指令的____属性用来引入需要的包或类。
A、extends
B、import
C、languge
D、contentType
解析:page的常用指令包括import,language,contType 属性,
import作用是导入任何类类名,包名,
language是解释该JSP文件时采用的语言,默认为java,
contentType让客户端浏览器该属性判断文档类型
8.在JSP中,只有一行代码:<%=A+B%>,运行将输出_____。
A、A+B
B、AB
C、113
D、没有任何输出,因为表达式是错误的
解析:这个表达式显而易见是错误的
若表达式是<%= ‘A’+‘B’>, 单引号是这两个字母十进制则A在ASC码中为 65 .B=66,即输出131
若表达式为<%= “A+B”>,拼接字符串,则输出A+B
若表达式为<%= A+B>,没有单引号也没有双引号 并且A和B 也没有赋值 会报错
9.下列动态网页和静态网页的根本区别描述错误的是______。
A、静态网页服务器端返回的HTML文件是事先存储好的
B、动态网页服务器端返回的HTML文件是程序生成的。
C、静态网页文件里只有HTML标记,没有程序代码
D、动态网页中只有程序,不能有HTML代码。
解析:静态网页是网站建设的基础,静态网页和动态网页之间并不矛盾,动态网站也可以采用静动结合的原则,在同一个网站上,动态网页内容和静态网页内容同时存在也是很常见的事情。
10.当浏览器第二次访问以下JSP网页时的输出结果是什么?
<%! int a=0; %>
<%
int b=0;
a++;
b++;
%>
a: <%=a %>
b: <%=b %>
选项:
A、a=0 b=0
B、a=1 b=1
C、a=2 b=1
D、a=2 b=2
解析:<%! %>定义的是全局变量,<% %>定义的是局部变量,所以每次b在你每次访问页面的时候都被重新赋值成0了,0加1一直都是1。a是全局声明的变量。没有被重置成0,而是每次访问时都加一,题为第二次访问浏览器,所以a为2 ( 建议童鞋们亲自测试一下哈!)
11.在“<%!”和“%>”标记之间声明的Java的方法称为页面的成员方法,其在____范围内有效。
A、从定义处之后有效。
B、在整个页面内有效。
C、从定义处之前有效。
D、不确定。
解析:<%!%>称作声明,其中写的内容将来会直接翻译在Servlet类中,<%! %>里声明的变量和方法百都是作为类的属性和方法存在的,所以在整个页面有效
12.在JSP中,_______动作用于将请求转发给其他JSP页面。
A、forward
B、include
C、useBean
D、setProperty
解析:<jsp:forward>
动作用来把当前的jsp页面重导到另一个页面上,用户看到的地址是当前网页的地址,内容则是另一个网页的。
我的答案:A 得分: 2.5分
13.可以实现不同网页之间的数据共享,而且还可以实现跨机共享数据的JSP对象是______。
A、Response对象
B、Session对象
C、Application对象
D、Request对象
解析:
四大对象 | 解释 |
---|---|
response | 主要用于服务器端向客户端发送数据 ,是JSP中最基本的对象 |
request | 用来访问任何客户端用HTML请求传递的信息,包括使用POST方法传递的参数或利用GET方法送出的请求以及用户端浏览器送出的cookie和server变量集合中大量的标准信息。 |
session | 存储访问者的用户信息,多个页面可以访问该信息,但是两个访问者之间不能共享该信息。: |
application | 使用Application对象来使整个ASP应用程序的所有用户共享数据,把一个ASP程序中的不同用户、不同页面联系在一起 |
14.为了丰富JSP页面的图形化布局,可以使用下面哪个JSP标准动作把一个图像导入到JSP页面中?____
A、<jsp:image page=”logo.png”/>
B、<jsp:include page=”logo.png”/>
C、<jsp:include file=”logo.png”/>
D、使用JSP标准动作无法做到
15.JSP的编译指令标记通常是指____。
A、Page指令、Include指令和Taglib指令
B、Page指令、Include指令和Plugin指令
C、Forward指令、Include指令和Taglib指令
D、Page指令、Param指令和Taglib指令
解析:
编译指令标记 | 作用 |
---|---|
:page指令 | : 用于设置JSP页面的属性,这些属性将用于和JSP容器通信,控制所生成的servlet结构。 |
include指令 | 在页面转换期间将文件包含到jsp页面 |
taglib指令 | 声明用户使用的自定义标签。 |
16.______是JSP中最基本的对象,它是用户与服务器进行交互的基础。
A、Response对象
B、Session对象
C、Application对象
D、Request对象
解析:参见第13题解析/font>
17.URL是Internet中资源的命名机制,URL由三部分构成_____。
A、协议、主机DNS名或IP地址和文件名
B、主机、DNS名或IP地址和文件名、协议
C、协议、文件名、主机名
D、协议、文件名、IP地址
18.在“<%=”和“%>”标记之间放置_____,可以直接输出其值。
A、变量
B、Java表达式
C、字符串
D、数字
解析:参见第2题解析
19.在JSP中,test.jsp文件如下,试图运行时,将发生____。
<% String str = null; %>
stris <%= str%>
A、转译期有误
B、编译Servlet源码时发生错误
C、执行编译后的Servlet时发生错误
D、运行后,浏览器上显示:stris null
解析:str=null是一个表达式,且str是一个字符串,所以可以运行,,浏览器上显示:stris null
20.下列变量声明在____范围内有效。
<%! Date dateTime;
int countNum;
%>
A、从定义开始处有效,客户之间不共享
B、在整个页面内有效,客户之间不共享
C、在整个页面内有效,被多个客户共享
D、从定义开始处有效,被多个客户共享
解析:使用<%! %>定义的变量编译成servlet后成为servlet的私有成员变量,在servlet环境中,对于一个JSP页只允许有一个结果servlet的实例在运行和响应所有的页面请求。因此,在结果servlet中所有的成员变度量可以被所有的请求所共享,所以只要成员变量没有重新赋值,下次访问该页面时仍然不变。
21.Page指令中的“contenType”属性是用于指出_____。
A、数据库类型
B、网页类型
C、服务器类型
D、用户类型
解析:参见第7题解析/font>
22.下列注释方式可以再JSP中使用并且客户端无法查看的是____。
A、<!—注释–>
B、<%注释%>
C、<%–注释–%>
D、<%!注释%>
解析:JSP中的隐式注释有:// 注释 /* */ 注释和<%-- 注释 --%>
JSP中的显式注释有:<!—注释–>
23.当用户请求jsp页面时,JSP引擎就会执行该页面的字节码文件响应客户的请求,执行字节码文件的结果是______。
A、发送一个JSP源文件到客户端
B、发送一个Java文件到客户端
C、发送一个HTML页面到客户端
D、什么都不做。
我的答案:C 得分: 2.5分
24.下列哪个page指令是合法的?______
A、<%page language=”java”%>
B、<%! page language=”java”%>
C、<%@ page language=”java”%>
D、<%@Page language=”java”%>
解析:page指令对页面的某些特征进行描述,语法格式为:
<%@ page 属性名1=“值1” 属性名2=“值2” …%> 注意:属性之间用空格表示
25.pageContext、request、session、application四个内置对象的作用范围从小到大依次为__________
A、request、pageContext、session、application
B、request、session、pageContext、application
C、request、session、application、pageContext
D、pageContext、request、session、application
解析:
JSP4个内置对象 | 作用范围 |
---|---|
page | 用户请求的当前页面; |
request | 用户请求访问的当前组件,以及和当前web组件共享同一用户请求的web组件; |
session | 同一个Http会话中的web组件共享; |
application | 整个web应用的所有web组件共享,即只要是同一个服务器下的均可使用。 |
26.在JSP中,给定以下JSP代码片段,运行结果是_____。
<% int x=5; %>
<%! int x=7; %>
<%!
int getX(){
return x;
}
%>
<% out.print(“X1=”+x); %>
<% out.print(“X2=”+getX()); %>
A、X1=5 X2=7
B、X1=5 X2=5
C、X1=7 X2=7
D、X1=7 X2=5
解析:因为<%%>是方法里的 ,故<% int x=5; %> 范围小于<%! int x=7; %>
所以 <% out.print(“X1=”+x); %> 直接取的是<% %>里的5,即x1=5
<%!%>里才能定义方法,所以x2取的是x=7,所以x2=7.
27.不是JSP运行必须的是______。
A、操作系统
B、JavaJDK
C、支持Jsp的Web服务器
D、数据库
解析:jsp开发的时候如果你是用的数据库本地数据库那么你不用联网了, tomcat就是本地jsp运行服务器了,他给你提供运行jsp的文件,所以用数据库不是必须的
28.JSP的Page编译指令的属性Language的默认值是____。
A、Java
B、C
C、C#
D、SQL
解析:language是解释该JSP文件时采用的语言,默认为java
29.当多个用户请求同一个JSP页面时,Tomcat服务器为每个客户启动一个_____。
A、进程
B、线程
C、程序
D、服务
解析:对于每一个请求,JSP容器都会创建一个新的线程来处理它。如果多个客户端同时请求该JSP文件,则JSP容器也会创建多个线程,使得每一个客户端请求都对应一个线程
30.给定JSP文件代码如下:
<%!static int I=0;int j=0;%>
<%
for(;j++<2;){
out.print(I++);
out.print(“”);
}
%>
有两个客户依次使用浏览器浏览该jsp,且每个客户只浏览一次,那么第2个客户看到浏览器显示____。
A、0 1
B、1 2
C、3 4
D、什么也没有
解析:j小于2就循环,第一个人浏览完就是j就是2,所以当第二个客户浏览的时候不会再执行循环,所以就不会再输出什么,也就是什么也不显示
31.JSP页面经过编译之后,将创建一个_______。
A、applet
B、servlet
C、application
D、exe文件
32.在a.jsp中有代码片断如下:在b.jsp中加入下列____代码,可以输出在a.jsp页面上输入的loginName的值。
loginName:<inputtype=”text” name=”loginName”/>
<inputtype=”submit” name=”submit”/>
A、<%=(String) request.getParameter(“loginName”)%>
B、<%=(String) request.gerAttribute(“loginName”)%>
C、<% String name=request.getParameter(“loginname”);out.println(name); %>
D、<% String name-request.getAttribute(“loginname”); out.println(name); %>
33.在JSP中,page指令的_______属性用来引入需要的包或类。
A、extends
B、import
C、languge
D、contentType
解析:page的常用指令包括import,language,contType 属性,
import作用是导入任何类类名,包名,
language是解释该JSP文件时采用的语言,默认为java,
contentType让客户端浏览器该属性判断文档类型
34.给定以下JSP代码片段,有2个客户依次浏览该JSP,且每个客户只浏览一次,第2个客户会看到浏览器显示____。
<%int x = 1; %>
<%!int x = 10; %>
X =<%= ++x%>
A、X = 1
B、X = 2
C、X = 10
D、X = 11
解析:这个输出首先取得是局部变量里的x,也就是<% %>里的变量,++x,是指x先加1,然后再将值付给x,所以第二次访问浏览器显示的是x=2
二.多选题
1.下列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.” %>
解析:page的常用指令包括iimport 属性,其作用是导入任何类类名,包名,且Import是唯一可以声明多次的page属性,可以一次引用多个类,中间用英文逗号隔开
2.下列属于JSP内置对象的是________。
A、request
B、response
C、session
D、servletContext
解析:JSP有九大隐含对象,out, request, response, config, session, application, page, pageContext, exception
3.下列request和response内置对象的使用正确的是______。
A、request.getRequestDispatcher(“index.jsp”).forward();
B、response.sendRedirect(“index.jsp”);
C、request.getParameterValues(“name”);
D、response.setContentType(“text/html;charset=gbk”);
解析:JSP内置对象是指由JSP容器加载的,不用声明就可以直接在JSP页面中使用的对象
request常用的方法有:
String getParameter (String name):根据参数名称得到单一参数值
String getParameterValues(String name):根据参数名称得到一组参数值。
response常用方法:
void setContentType(String name):设置相应内容的类型和字符编码
例如:设置响应内容类型为text/html,字符编码gbk,response.setContentType(“text/html;charset=gbk”);
void sendRedirect(String url):重定向到指定的URL资源
例如:使用response对象的sendRedirect()方法实现页面的重定向response.sendRedirect(“index.jsp”);
4下列JSP表达式的写法正确的是_____。
A、<%=”abcdefg”.length()%>
B、<%=”abcedfg”+123%>
C、<%=new java.util.Date()%>
D、<%=this%>
5.下列对于JSP说法中正确的是_____。
A、JSP是Sun公司推出的新一代站点开发语言
B、JSP完全解决了目前ASP、PHP的一个通病——脚本级执行
C、JSP将内容的生成和显示进行分离
D、JSP强调可重用的组件
E、JSP采用标识简化页面开发
6.下列关于JSP执行过程的说法正确的是____。
A、JSP在容器启动时会被翻译成Servlet,并编译为字节码文件。
B、JSP在第一次被请求时会被翻译成Servlet,并编译成字节码文件。
C、在第二次请求时,将不再执行翻译步骤
D、如果JSP页面有错误将不再执行翻译步骤。
解析在一个JSP文件第一次被请求,JSP引擎将jsp文件转换为一个java源文件,在转换过程中,如果有任何语法错误,则终止转换,若果转换成功,则将生成的java源文件编译成相应的字节码文件(*.class文件)