天天看點

javaweb輸出所有學生資訊_10道JavaWeb進階面試題助你通過面試(附答案)

javaweb輸出所有學生資訊_10道JavaWeb進階面試題助你通過面試(附答案)
javaweb輸出所有學生資訊_10道JavaWeb進階面試題助你通過面試(附答案)

面試也是一場考試,是考試就有簡單的基礎題和複雜的難題,對于java面試也是如此,有java的基礎面試題,有java的進階面試題。前面已經總結整理了不少各類的java基礎面試題,今天來彙總一些

javaweb進階面試題

,幫助那些不是java零基礎的程式員學習回顧javaweb的知識。

1、談談你對ajax的認識?

答:Ajax 是一種建立互動式網頁應用的的網頁開發技術;“JavaScript and XML”的縮寫。

Ajax 的優勢: 通過異步模式,提升了使用者體驗;優化了浏覽器和伺服器之間的傳輸,減少不必要的資料往返,減少了帶寬占用;Ajax引擎在用戶端運作,承擔了一部分本來由伺服器承擔的工作,進而減少了大使用者量下的伺服器負載。

Ajax的最大特點:可以實作局部重新整理,在不更新整個頁面的前提下維護資料,提升使用者體驗度。

2、jsonp的原理是什麼?

答:JavaScript 是一種在 Web 開發中經常使用的前端動态腳本技術。在 JavaScript 中,有一個很重要的安全性限制,被稱為“Same-Origin Policy”(同源政策)。這一政策對于 JavaScript 代碼能夠通路的頁面内容做了很重要的限制,即 JavaScript 隻能通路與包含它的文檔在同一域下的内容。

jsonp的最基本的原理是:動态添加一個<script>标簽,使用 script 标簽的 src 屬性沒有跨域的限制的特點實作跨域。首先在用戶端注冊一個 callback, 然後把 callback 的名字傳給伺服器。此時,伺服器先生成 json 資料。然後以 javascript 文法的方式,生成一個 function , function 名字就是傳遞上來的參數 jsonp。最後将json 資料直接以入參的方式,放置到 function 中,這樣就生成了一段 js 文法的文檔,傳回給用戶端。用戶端浏覽器,解析 script 标簽,并執行傳回的 javascript 文檔,此時資料作為參數,傳入到了用戶端預先定義好的 callback 函數裡。

3、說一下常用的Linux指令都有哪些?

答:列出檔案清單:ls【參數 -a -l】

建立目錄和移除目錄:mkdir rmdir

用于顯示檔案後幾行内容:tail

打包:tar -xvf

打包并壓縮:tar -zcvf

查找字元串:grep

顯示目前所在目錄:pwd

建立空檔案:touch

編輯器:vim vi

列出檔案清單:ls 【參數 -a -l】

建立目錄和移除目錄:mkdir rmdir

用于顯示檔案後幾行内容:tail

打包:tar -xvf

打包并壓縮:tar -zcvf

查找字元串:grep

顯示目前所在目錄:pwd

建立空檔案:touch

4、Linux怎麼關閉程序?

答:通常用ps檢視程序PID,用kill指令終止程序。ps指令用于檢視目前正在運作的程序。grep 是搜尋,例如:ps -ef | grep java表示檢視所有程序裡 CMD 是 java 的程序資訊。

5、JSP中動态的include與靜态include的差別?

答:動态include用于jsp:include動作實作<jsp:include page = “include.jsp” flush = “true”/>它總是會檢查所含檔案的變化,适用于包含動态頁面,并且可以帶參數。

靜态include用include僞碼實作,不會檢查所含檔案的變化,适用于包含靜态頁面<%@include file=“include.html”%>。

6、請求轉發和重定向的差別?

答:(1)請求轉發是一個請求一次響應,而重定向會是兩次請求兩次響應。(2)請求轉發位址欄不變化,而重定向會顯示後一個請求的位址。(3)請求轉發隻能轉發到本地項目其他servlet,而重定向不隻能重定向到本項目其他servlet,還能定向到其他項目。(4)請求轉發是伺服器端行為,隻需要給出轉發的servlet路徑,而重定向需要給出request URI,即包含項目名。(5)請求轉發帶值,重定向不帶值。

7、JSP和Servlet有哪些相同點和不同點,聯系是什麼?

答:JSP是Servlet技術的擴充,本質上是Servlet的簡易方式,更強調應用的外表表達。JSP編譯後是"類Servlet",Servlet和JSP最主要的不同點在于,Servlet的應用邏輯是在java檔案中,并且完全從表現HTML中分離出來,而JSP的情況是java和HTML可以組合成一個擴充名為.jsp的檔案,JSP偏重于視圖,Servlet偏重于業務邏輯。

8、jsp有哪些内置對象?作用分别是什麼?

答:JSP共有以下9種基本内置元件。

(1)request對象 對應用戶端請求,此請求會包含來自GET/POST請求的參數,通過它了解客戶的需求,然後做出響應。

(2)response對象 響應客戶請求的有關資訊,包括傳回給用戶端的資訊。

(3)session對象 它指的是用戶端與伺服器的一次會話,從用戶端連到伺服器的一個WebApplication開始,直到用戶端與伺服器斷開連接配接為止。

(4)out對象 它是JspWriter類的執行個體,是向用戶端輸出内容常用的對象。

(5)page對象 它是指向目前JSP頁面本身,有點象類中的this指針,它是 java.lang.Object類的執行個體。

(6)application對象 它實作了使用者間資料的共享,可存放全局變量。它開始于伺服器的啟動,直到伺服器的關閉。

(7)exception對象 它是一個例外對象,當一個頁面在運作過程中發生了例外,就産生這個對象。

(8)pageContext對象 它提供了對JSP頁面内所有的對象及名字空間的通路。

(9)config對象 它是在一個Servlet初始化時,JSP引擎向它傳遞資訊用的。

9、tomcat容器是如何建立servlet類執行個體?用到了什麼原理?

答:當容器啟動時,會讀取在webapps目錄下所有的web應用中的web.xml檔案,然後對xml檔案進行解析,并讀取servlet注冊資訊。然後,将每個應用中注冊的servlet類都進行加載,并通過反射的方式執行個體化。

10、Servlet API中forward()與redirect()的差別?

答:forward是伺服器端的轉向也就是請求轉發而redirect是用戶端的跳轉也就是重定向。使用forward浏覽器的位址不會發生改變。而redirect會發生改變。

forward是一次請求中完成。而redirect是重新發起請求,意味着上一次請求中傳遞過來的參數在重新發起請求時将不再存在。

forward是在伺服器端完成,而不用用戶端重新發起請求,效率較高。

forward請求轉發不允許通路外部資源,redirect重定向則可以通路外部資源。因為相當于兩次請求,第二次請求與第一次請求無關,是以第二次請求可以去通路任何網頁。

以上就是今天整理的javaweb進階面試題,希望大家可以好好學習這10道題,将這些題目裡涉及到的知識點都複習回顧一下,遇到哪裡不會的要及時查閱資料弄懂,以後順利通過面試。