【原創內容】
問答題
1、
JSP
技術是一種在WEB
應用中開發動態互動性網頁的技術,請闡述一下JSP
技術的優缺點?JSP技術具備了Java技術的簡單易用、完全物件導向、具有平台無關性且安全可靠、主要面向Internet的所有特點。JSP的技術優勢:1、 一次編寫、到處運行。2、 系統的多平台支援。3、 強大的延展性。4、 多樣化和功能強大的開發工具支援。 JSP的技術弱勢: 1、正式由於為了跨平台的功能,為了極度的伸縮能力,所以極大地增加了產品的複雜性。 2、Java的運行速度是用class對象常駐記憶體來完成的,所以需要電腦系統有足夠的記憶體來保證程式的運行。
2、
請簡述JSP
的工作原理。當JSP頁面第一次被Java伺服器調用時,通過JSP引擎自動被編譯成Servlet,然後被執行,以後每次調用時,執行編譯過的Servlet。將執行的結果在用戶端顯示出來。
3、
在JSP
的動作元素中,<jsp:include>
標籤允許包含兩種檔案:動態檔案和靜態檔案,在伺服器對這兩種檔案進行解析執行時,有什麼異同點。<jsp:include>標籤允許包含動態檔案和靜態檔案,但是這兩種包含檔案的結果是不同的。如果檔案僅僅是靜態檔案,那麼這種包含僅僅是把包含檔案的內容加到JSP檔案中去,這種被包含檔案不會被JSP編譯器執行。相反地,如果這個被包含檔案是動態檔案,那麼這個被包含檔案將會被JSP編譯器執行。
4、
在WEB
頁面中我們常有的頁面重新導向技術有那些?在Servlet
中,我們如何?頁面轉寄?
5、
請寫出使用JDBC
技術串連SQL Server
資料庫時,建立連線物件(Connection
)以及建立語句集對象(Statement
)的JAVA
代碼。
Connection connection; Statement statement; String sourceURL="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=你的資料庫的名字 "; String UserName=你的資料庫使用者名稱; String Password=你的資料庫的訪問密碼; public DatabaseConnection () { try { Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); connection = DriverManager.getConnection(sourceURL,UserName,Password); statement = connection.createStatement(); } catch (SQLException sqle) { System.err.println("Error creating connection"); } catch (ClassNotFoundException cnfe) { System.err.println(cnfe.toString()); } } |
6、
請比較並簡述利用JSP+JavaBean
模式進行開發和利用JSP+Servlet+JavaBean
模式進行開發有什麼異同?有什麼優缺點?1、 使用JSP+JavaBean模式開發項目時,JSP頁面獨自響應請求並經處理後把結果返回給用戶端;JavaBean負責處理商務邏輯。這種模式簡單,快速,高效。但是會在JSP頁面中嵌入大量的Java代碼,當要處理的商務邏輯複雜時,頁面會變的非常複雜。而且難於維護。2、 使用JSP+Servlet+JavaBean模式開發項目時,系統的結構非常清晰,而且符合MVC的開發模型。JSP負責控制用戶端的資訊顯示;JavaBean負責處理具體的商務邏輯;Servlet充當控制器的角色,控製程序邏輯的轉寄。這樣便於系統的開發和後期的維護。缺點是Servlet的編寫難度比JSP複雜,而且配置也比較複雜。
7、
JavaBean
的特性有哪些?1、 可以實現代碼的重複利用;2、 易維護性、易使用性、易編寫性;3、 可以在支援Java的任何平台上工作,而不需要重新編譯;4、 可以在內部、網內或者是網路間進行傳輸;5、 可以以其他組件的模式進行工作。
8、
請簡述JavaBean
和EJB
的區別?JavaBean組件和企業級EJB組件的概念是完全不同的。EJB是J2EE的核心技術,它為程式開發伺服器端應用程式組件提供了一個模型,利用這個模型來建立可移植與分布式公司專屬應用程式程式伺服器或組件。EJB是一個用來建立分布式、伺服器端以及基於Java的公司專屬應用程式程式組件的功能強大的組件模型。
9、
請簡述Servlet
的生命週期Servlet的生命週期分為以下幾個階段:1、裝載Servlet2、建立一個Servlet執行個體3、調用Servlet的init()方法4、服務5、銷毀在上述的幾個階段中,對外服務是最重要的階段,service()方法是我們最關心的方法。因為它是處理業務的方法。
10、
在使用Servlet
時,doPost
方法和doGet
方法有什麼區別?1、doGetGET調用用於擷取伺服器資訊,並將其作為響應返回給用戶端。當經由WEB瀏覽器,或者通過HTML、JSP直接存取Servlet的URL時,一般使用Get調用。GET調用在URL裡顯示正傳送給Servlet的資料,這在系統的安全方面會帶來一些問題。 使用doGet調用,在用戶端的Form表單中必須指定調用的類型為Get。2、doPost 它用於它用戶端的資料發送到伺服器端。使用它的好處是可以隱藏發送給伺服器端的任何資料。Post適合發送大量的資料。
11、
在JSP
中共用資料,大體上可以分為兩種方式,一種是在同一個使用者的不同頁面之間共用資料,另一種是在不同的使用者之間共用資料。請回答上面兩種方式分別通過什麼方法可以實現?對於同一個使用者的會話,要想在不同的頁面之間共用資料,可以有以下幾種選擇: 1、把資料儲存在Session中 2、通過Cookie; 3、通過隱含的表單把資料提交到下一個頁面 4、通過ServletContext對象; 5、通過Application對象 6、通過檔案系統或者資料庫 對於不同使用者之間共用資料,通常的方法是: 1、通過ServletContext對象 2、通過Application對象 3、通過檔案系統或者資料庫