Java Web基礎筆試題-java培訓
一、 填空題(每空2分,共30分) 1、在tomcat上發布javaweb應用時的預設目錄是__webapps___目錄。 2、javaweb應用的部署描述符是指 web.xml__ 檔案。 3、在tomcat中訪問helloapp應用的login.html檔案時,在瀏覽器地址欄應寫的url為:__。 4、Servlet容器啟動每一個web應用時,都會為它建立一個唯一的___ServletContext__對象,該對象和web應用有相同的生命週期。 5、請求轉寄源組件的響應結果___不會__發送到用戶端,包含__會__發送到用戶端。(填“會”或“不會”) 6、jsp中實現請求轉寄的標記為:_________。 7、在JSP中,? request? 內建對象代表請求訊息, response 內建對象代表響應訊息,___session_內建對象代表會話。 8、如果使用第四類jdbc磁碟機串連資料庫,jar檔案的存放位置為“web應用/_WEB-INF /lib_______”。 9、Servlet容器為每一個HttpSession對象分配一個唯一識別碼,叫做___SessionID___。 10、javaweb在mvc設計模式下,___javabean___是模型,___jsp是視圖,__servlet__是控制器。 二、 選擇題(每題2分,共30分) 1、下面哪一個選項不是http響應的一部分?(? c ) ?a) 回應標頭 b) 響應本文 c) 協議版本號碼 d) 狀態行 ? 2、http請求及響應的本文部分可以是任意格式的資料,要保證接收方能看得 懂發送方發送的資料,http協議採用( d? )協議來規範本文的資料格式 ? a) FTP b) TCP c) HTTP d) MIME 3、Servlet API 由哪兩個包組成?(兩個答案)( ac ) a) javax.servlet b) javax.servlet.jsp c)? javax.servlet.http d) java.servlet 4、一個servlet的生命週期不包括( b? )方法? a)? init()方法 b)? invalidate()方法 c)? service()方法 d)? destroy()方法 5、HttpServletRequest對象的(? c )方法能夠擷取一個表單參數的值: a)? getQuaryString() b)? getPathInfo() c)? getParameter() d)? getAttribute() 6、下面對servlet中重新導向說法描述錯誤的是( d ) a) 使用的是HttpServletResponse介面的sendRedirect()方法 b) 源組件的響應結果不會發送給用戶端 c)? sendRedirect()方法後的代碼仍會執行 d) 源組件和目標組件共用ServletRequest對象 ? 7、jsp指令不包括( c? ) a)? page指令 b)? taglib指令 c)? import指令 d)? include指令 8、jsp中java運算式的文法格式為:(a ) ? 9、可以執行請求轉寄的操作是(d )。 a) jsp中response內建對象的sendRedirect()方法 b) 標記 c) RequestDispatcher對象的include()方法 d) RequestDispatcher對象的forward()方法 10、(? d? )內建對象可以處理jsp頁面運行中的錯誤或者異常 a)? pageContext b)? page c)? session d)? exception 11、下面對jdbc api描述錯誤的是(? d? ) a)? DriverManager介面的getConnection()方法可以建立和資料庫的串連 b)? Connection介面的createStatement()方法可以建立一個Statement對象 c)? Statement介面的executeQuery()方法可以發送select語句給資料庫 d)? ResultSet介面表示執行insert語句後得到的結果集 12、JavaBean的scope取什麼值可使該javabean被多個使用者共用,即和web 應用有相同的生命週期?(? d? ) a) page b) request c) session d) application 13、下面哪個不是JSP中和javabean相關的標記?(? b ) 14、以下關於EL和JSTL說法錯誤的是?( d ) a) EL是一種簡潔的資料訪問語言 b) EL運算式基本形式:${var} c) JSTL的全稱是JavaServer Pages Standard Tag Library d) JSTL只有一個Core核心標籤庫 15、所有的servlet過濾器類都必須實現( a? )介面。 a) javax.servlet.Filter b) javax.servlet.ServletConfig c) javax.servlet.ServletContext d) javax.servlet.Servlet 三、 編程題(共40分) 1、第一個Servlet1檔案,讀取兩個請求參數first和second,將其轉換為int值後相加,和存放在請求範圍內,然後把請求轉寄第二個 Servlet2.。第二個Servlet2檔案(url為output),向客戶輸出Servlet1計算的結果。根據注釋補充下列代碼。(23分) public class Servlet1 extends HttpServlet { ? public void service(ServletRequest request,ServletResponse response) ? throws ServletException, IOException { ? //讀取兩個請求參數,並將其轉換為int值 ? int first=Integer.valueOf(request.getParameter(“first”)).intValue();________(3分) ? int second=Integer.valueOf(request.getParameter(“second”)).intValue();___(3分) ? //將兩個數字相加 int sum=first+second;_____(3分) ? //在request對象中添加sum屬性 _? request.setAttribute(“sum”, String.valueOf(sum));______(3分) ? _? ServletContext context=getServletContext(); ? RequestDispatcher dispatcher=context.getRequestDispatcher(“/output”); ?dispatcher.forward(request, response);_____(5分) ? } } public class Servlet2 extends HttpServlet { ? public void service(ServletRequest request,ServletResponse response) ? throws ServletException, IOException { ? //讀取請求範圍內Servlet1計算出的和 ? _? String sum=(String)request.getAttribute(“sum”);_________(3分) ? //向用戶端輸出和 ? PrintWriter out=response.getWriter(); ? out.print(“the sum is “+sum);_________(3分) ? } } 2、寫一個JSP訪問Access資料庫的user表,將所有的記錄顯示出來;ODBC資料來源名為test,驅動類名 為:”sun.jdbc.odbc.JdbcOdbcDriver”,串連資料庫的url為:”jdbc:odbc:test”。user表中name字 段為文本類型,password為數字類型。串連資料庫代碼(6分),發送查詢語句代碼(4分),處理結果集代碼(7分)(共17分)