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,而是每次訪問時都加一
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
我的答案:B 得分: 0.0分
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、什麼也沒有
我的答案:A 得分: 0.0分
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
二.多選題
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”);
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頁面有錯誤將不再執行翻譯步驟。