1. 程式人生 > >年終總結:java筆試題49道 收藏版(含答案)

年終總結:java筆試題49道 收藏版(含答案)

1、在Java EE中,Servlet是在伺服器端執行,以處理客戶端請求而做出的響應的程式,下列選項中屬於Servlet生命週期階段的是( )

A、載入和例項化

B、初始化

C、服務

D、銷燬

E、以上全部

答案:E

2、在Java EE中的MVC設計模式中,( )負責接受客戶端的請求資料

A、JavaBean

B、JSP

C、Servlet

D、HTML

答案:C

3、過濾器應實現的介面是( )。

A、HttpServlet

B、HttpFilter

C、ServletFilter

D、Filter

答案:D

4、開發Java Web應用程式的時候,建立一個Servlet,該Servlet重寫了父類的doGet()和doPost()方法,那麼其父類可能是( )

A、RequestDispatcher

B、HttpServletResponse

C、HttpServletRequest

D、HttpServlet

答案:D

5、在Java Web開發中,如果某個資料需要跨多個請求存在,則資料應該儲存在( )中

A、session

B、page

C、request

D、Response

答案:A

6、在開發Java Web應用程式的時候,HTTP請求訊息使用Get或POET方法以便在WEB上傳輸資料,下列關於GET和POST 方法描述正確的是( )

A、POST請求的資料在位址列不可見

B、GET請求提交的資料在理論上沒有長度限制

C、POST請求對傳送的資料的長度限制在240——255個字元

D、GET請求提交資料更加安全

答案:A

7、在JSP中有EL表示式${10*10 ne 10},結果是( )

A、100

B、true

C、fasle

D、以上都不對

答案:B

8、JSTL標籤的分類以下說法正確的是( )

A、通用標籤與迭代標籤

B、核心標籤與迭代標籤

C、核心標籤與sql標籤

D、以上都不是

答案:C

9、在Java Servlet API中,HttpServletRequest介面的( )方法用於返回當前請求相關聯的會話,如果沒有,返回null

A、getSession() //=gerSession(true)預設為:getSession(true)

B、getSession(true)

C、getSession(false)

D、getSession(null)

答案:C

10、在Java Web開發中,不同的客戶端需要共享資料,則資料應該儲存在( )中

A、session

B、application

C、request

D、response

答案:B

11、利用三層結構搭建某網上書店系統,設計使用者登陸介面,如果你是設計人員,你將在三層結構的( )中實現

A、模型層

B、表示層

C、資料訪問層

D、業務邏輯層

答案:B

12、在Java EE中,( )介面定義了getSession()方法

A、httpServlet

B、HttpSession

C、HttpServletRequest

D、HttpServletResponse

答案:C

13、JSP標準標籤庫(JSTL)提供的主要標籤庫中,其中( )可用於操作資料庫。

A、核心標籤庫

B、I18N與格式化標籤庫

C、XML標籤庫

D、SQL標籤庫

答案:D

14、JSP表示式語言可用於在網頁上生成動態的內容並代替JSP元素,JSP表示式語言的語法是( )

A、{EL expresion}

B、${EL expresion}

C、@{EL expresion}

D、#{EL expresion}

答案:B

15、在J2EE的體系結構中,系統的業務和功能程式碼組成了三層結構中的( )層

A、表示層

B、中間層

C、資料層

D、客戶端層

答案:B

16、在JSTL的達代標籤的屬性中,用於指定要遍歷的物件集合( )

A、var

B、items

C、value

D、varStatus

答案:B

17、如果不希望JSP網頁支援Session,應該( )。

A、呼叫HttpSession的invalidate()方法

B、<%@ page session= “false”>

C、在jsp頁面中寫入如下程式碼HttpSession session=request.getSession(false);

D、呼叫HttpSession的setMaxInactiveInterval(),將時間設定為0

答案:B

18、Servlet是一個在伺服器上執行、處理請求資訊並將其傳送到客戶端的Java程式()接受服務請求、找到Servlet類、載入Servlet類並建立Servlet物件。

A、客戶端

B、IE瀏覽器

C、Servlet容器

D、Servlet本身

答案:C

19、MVC設計模式包含模型層、檢視層和控制層,在下列元件扮演控制器角色的是( )

A、Servlet

B、JSP

C、javaBean

D、HTML

答案:A

20、JSP標準標籤庫(JSTL)的標籤庫描述符檔案的字尾是( )

A、.tld

B、.jar

C、.properties

D、.xml

答案:A

21、在J2EE中,以下不是JSP隱式物件的是( )

A、pageContext

B、context

C、application

D、out

答案:B

22、在Java Web應用程式中,給定servlet A的程式碼片段如下所示:

    Public void doPost(HttpServletRequest request,HttpServletResponse response)
        throws ServletException,IOException{
        String id=”kingdom”;
}

Servlet B與servlet A同在一個有效的會話範圍內,當把請求轉發給servlet B後,要使B能夠獲得”kingdom”值,下劃線處應填入( )

A、request.getSession().setAttribute(“ID”,id);

B、request.getSession().getAttribute(“ID”,id);

C、request.getSession().setParameter(“ID”,id);

D、request.getSession().getParameter(“ID”,id);

答案:A

23、在Java Web應用程式中,包含兩個名為Servlet1和Servlet2的HttpServlet,在web.xml中指定Servlet2的訪問路徑為”/servlet2″,Servlet1的doGet方法中的程式碼為:

PrintWriter out=response.getWriter();

out.print(“Servlet1″);

RequestDispatcher dispatcher=request.getRequestDispatcher(“/servlet2″);

dispatcher.forword(request,response);

out.close();

Servlet2的doGet方法中的程式碼為:

PrintWriter out=response.getWriter();

out.print(“Servlet2″);

out.close();

24、如果使用者在瀏覽器中訪問Servlet1,則瀏覽器將( )

A、顯示”Servlet1″

B、顯示”Servlet2″

C、顯示”Servlet1Servlet2″

D、什麼也不顯示

答案:B

25、在Java Web應用程式中,使用資料來源與JNDI獲得資料庫連線時,應把JDBC驅動程式jar檔案放在( )下:

A、應用程式的src目錄

B、應用程式的/WEB-INF/lib目錄

C、Tomcat的根目錄

D、Tomcat的common/lib目錄

答案:D

26、在Java Web 應用中,下面關於HttpSession的說法正確的是( )(選擇二項)

A、Servlet容器負責建立HttpSession物件

B、每個HttpSession物件都有唯一的ID

C、客戶端瀏覽器負責為HttpSession分配唯一的ID

D、HttpSession 物件的ID值,由程式設計師進行分配

答案:AB

27、在HTTP協議中,請求訊息使用( )方法用於通過Internet傳送大量資料,沒有長度的限制。

A、get

B、post

C、put

D、head

答案:B

28、在Java Web應用程式中,JSP EL 表示式可用於訪問( )中儲存的資料

A、Web.xml

B、Servlet

C、Applet

D、JavaBean

答案:D

29、在JSP中,使用jsp:useBean動作可以將javaBean嵌入JSP頁面,對JavaBean的訪問範圍不能是( )。

A、page

B、request

C、response

D、application

答案:C

30、在Java Web應用程式中,包含jsp1.jsp和jsp2.jsp,以及封裝在user包下的名為User的Javabean,user中包含loginName屬性以及相應的setter和getter方法,如果使用者A在瀏覽器中訪問jsp1.jsp後,使用者B在瀏覽器中訪問jsp2.jsp,則使用者B的瀏覽器將( )

Jsp1.jsp程式碼:

<html>

<jsp:useBean id=”user” class=”user.User” scope=”session”/>

<jsp:setProperty name=”user” property=”loginName” value=”Mart”/>

</html>

Jsp2.jsp程式碼:

<html>

<jsp:useBean id=”user” class=”user.User” scope=”session”/>

<jsp:getProperty name=”user” property=”loginName”/>

</html>

A、什麼也不顯示

B、顯示”null”

C、顯示”Mart”

D、報錯,提示無法顯示網頁

答案:A

31、在servlet的服務方法(如doPost() )中,如何從請求獲得”userID”值 ( )

A、String userID = request.getParameter(“userID”);

B、String userID = request.getHeader(“userID”);

C、String userID = request.getRequestHeader(“userID”);

D、String userID = getServletContext().getInitParameter(“userID”);

答案:A

32、HttpServletResponse的哪些方法用於將一個HTTP請求重定向到另一個URL( )

A、sednURL()

B、redirectURL()

C、redirectHttp()

D、sendRedirect()

E、getRequestDispatcher()

答案:D

33、以下哪個程式碼段會得到一個輸出流,用於向HttpServletResponse輸出字元文字 ( )

A、java.io.PrintWriter out = response.getWriter();

B、ServletOutputStream out = response.getOutputStream(); //輸出為位元組文字

C、java.io.PrintWriter out = new PrintWriter(response.getReader());

D、Servlet OutputStream out = response.getBinaryStream();

答案:A

34、servlet開發人員在擴充套件HttpServlet時如何處理HttpServlet的service()方法( )(選擇二項)

A、大多數情況下都應該覆蓋service()方法

B、應當從doGet()或doPost()呼叫service()方法

C、應當從init()呼叫service()方法

D、應當至少覆蓋一個doXXX( )方法(如doPost())

答案:AD

35、關於會話屬性,以下哪些說法是正確( )(選擇兩項)

A、HttpSession.getAttribute(String)的返回型別是Object

B、HttpSession.getAttribute(String)的返回型別是String

C、在HttpSession上呼叫setAttribute(“keyA”, “valueB”)時,如果這個會話中對應鍵keyA已經有了一個值,就會導致丟擲一個異常

D、在HttpSession上呼叫setAttribute(“keyA”, “valueB”)時,如果這個會話中對應鍵keyA已經有一個值,則會導致這個屬性原先的值被String valueB替換

答案:AD

36、給定req是一個HttpServletRequest,哪個程式碼會在不存在會話的情況下建立一個會話( ) (選擇兩項)

A、req.getSession()

B、req.getSession(true)

C、req.getSession(false)

D、req.createSession()

E、req.getNewSession()

F、req.createSession(true)

G、req.createSession(false)

答案:AB

37、給定TheBean類,假設還沒有建立TheBean類的例項,以下哪些JSP標準動作語句能建立這個bean的一個新例項,並把它儲存在請求作用域 ( )

A、

B、

C、

D、

答案:C

38、給定一個Model1體系結構,其中有一個JSP頁面處理所有控制器函式,這個JSP控制器要把請求分派給另一個JSP頁面 ( )

A、<jsp:forward page=”view.jsp”/>

B、<jsp:forward file=”view.jsp”/>

C、<jsp:dispatch page=”view.jsp”/>

D、<jsp:dispatch file=”view.jsp”/>

答案:A

39、有關jsp:useBean標準動作,以下哪些說法是正確的 ( ) (選擇兩項)

A、id屬性表示物件的名稱

B、scope屬性是必要的 //是比不可少的,雖說可省略不寫,但預設仍存在

C、scope屬性是可選的,預設為page

D、class屬性是可選的 //class 屬性與 type屬性一樣,二者(必須)任選一

答案:CD

40、在JSP頁面上使用JSTL標籤時,應使用taglib指令匯入標籤庫描述檔案,並設定taglib指令的( )屬性指定標籤的字首。

A、prefix

B、name

C、tag

D、uri

答案:A

41、JavaBean是在Java中開發的可以跨平臺的重用元件,JavaBean必須滿足的要求中不包括( )

A、是一個共有類

B、實現java.io.Serializable介面

C、具有不帶任何引數的共有建構函式

D、具有訪問屬性的共有的getter和setter方法

答案:C

42、在JSP頁面中使用<c:froEach>標籤,對session中集合物件arr進行迭代時,items屬性賦值正確的是( )。

A、<c:forEach var=”bean” items=”session.arr”/>

B、<c:forEach var=”bean” items=”${session.arr}”/>

C、<c:forEach var=”bean” items=”sessionScope.arr”/>

D、<c:forEach var=”bean” items=”${sessionScope.arr}”/>

答案:D

43、下列選項中不屬於JSP標準動作的是( )

A、jsp:forward/

B、<c:out/> //這個是屬於標籤

C、jsp:useBean/

D、jsp:setProperty/

答案:B

44、在JavaEE中,初始化Servlet例項的時候,init()方法是由( )執行

A、程式設計師編寫程式碼來呼叫執行

B、每次執行當前的Servlet時,由系統自動執行

C、當第一次執行當前的Servlet時,由系統自動執行

D、以上說法都不對

答案:C

45、在Java Web應用程式中,要完成將使用者會話中的”counter”計數器的值增加1,下列( )是正確的Servlet程式碼片段。

A、

HttpSession session=request.getSession(true);
    int ival=session.getAttribute(“counter”);
    if(ival==null){
        ival=1;   
    }else{
        Ival=ival+1;
        session.setAttribute(“counter”,ival);
    }

B、

HttpSession session=request.getSession(true);
   Integer ival=(Integer)session.getAttribute(“counter”);
   session.setAttribute(“counter”,ival+1);

C、

HttpSession session =request.getAttribute(“counter”);
   if(ival==null){
       ival=new Integer(1);
   }else{
       ival=new Integer(ival.intValue()+1);
   }
   session.setAttribute(“counter”,ival);

D、

HttpSession session=request.getSession();
Integer ival=(Integer)session.getAttribute(“counter”);
If(ival==null){
            ival=1;
}else{
            ival=ival+1;
}
session.setAttribute(“counter”,new Integer(ival));

答案:D

46、在JSP頁面中,( )可以取得名為boxes的複選框第一個值。(選兩項)

A、${param.boxes}

B、${paramValues.boxes}

C、${paramValues.boxes[0]}

D、${paramValue.boxes[1]}

答案:AC

47、下面這一段JSP程式碼片斷的輸出結果是( )。

<%! int i=1;%> //<%! Int i=1;%>代表宣告的是全域性變數或方法    
<%!int getNumber(){ //<% int i=1;%> 代表宣告的是區域性變數或方法    
return i;    
}    
%>    
<% int i=10;    
out.println(“first i=”+i);    
%>    
<% out.println(“second i=”+i); %>    
<% out.println(“third i=”+getNumber()) ; %>

A、first 1=10 second i=1 third i=1

B、first i=10 second i=10 third i=1

C、first 1=10 second i=1 third i=10

D、first 1=1 second i=1 third i=1

答案:B

48、在J2EE中,test.jsp檔案如下。試圖執行時,將發生( )。

<html>
<% String str=null ;%>
str is <% =”str”%>
</html>

A、轉譯期錯誤

B、編譯期錯誤

C、執行後,瀏覽器上顯示:str is null

D、執行後,瀏覽器上顯示:str is str

答案:D

49、對於以下程式碼,說法正確的是( )。

session.setAttribute(“count”,new Integer(0));

Integer count = session.getAttribute(“count”);

A、不能通過編譯

B、能通過編譯,並且能正常執行

C、編譯通過,但執行時丟擲ClassCastException

D、以上說法都不正確

答案:A

如果你是一名程式設計師,如果你剛好又是Java程式設計師,恰巧剛好你的技術又遇到了瓶頸但是你又拒絕平庸,期待蛻變,想進入一線網際網路公司或者給自己漲薪

我這裡剛好有一套自己儲存的Java進階學習資料。包含了Spring框架、Mybatis框架SpringBoot框架、SpringMVC框架、SpringCloud微服務、Dubbo框架、Redis快取、RabbitMq訊息、JVM調優、Tomcat容器、MySQL資料庫

之前的兩千人群滿了 這個是新群Java高階進階群:963,944.895,免費傳送的喲