1. 程式人生 > 其它 >jsp最簡單的讀取本地圖片在前端顯示_web前端—面試題彙總(096-100)

jsp最簡單的讀取本地圖片在前端顯示_web前端—面試題彙總(096-100)

技術標籤:jsp最簡單的讀取本地圖片在前端顯示

每天堅持更新五道web前端開發面試題;點點關注,才會不迷路哦~~~~~

d8eb8a015eced6a4521224f791892a5c.png

096.JavaScript中獲取某個元素的三種方式JavaScript中的三種彈出式訊息提醒命令是什麼?

window.alert() 顯示一個提示資訊

window.confirm() 顯示一個帶有提示資訊、確定和取消按鈕的對話方塊

window.prompt() 顯示可提示使用者輸入的對話方塊

setTimeout與setInterval 的區別

setTimeout和setInterval的語法相同。它們都有兩個引數,一個是將要執行的程式碼字串,還有一個是以毫秒為單位的時間間隔,當過了那個時間段之後就將執行那段程式碼。

不過這兩個函式還是有區別的,setInterval在執行完一次程式碼之後,經過了那個固定的時間間隔,它還會自動重複執行程式碼,而setTimeout只執行一次那段程式碼。

window.setTimeout("function",time);//設定一個超時物件,只執行一次,無週期

window.setInterval("function",time);//設定一個超時物件,週期='互動時間'

097.JavaScript操作CSS的兩種方式

第一種方式:操作元素的屬性(物件.style.樣式名=樣式值;)

//改變直接樣式

var child2 = document.createElement("div");
 child2.innerHTML = "child2";
 child2.style.fontWeight = "bold";
 parent.appendChild(child2);

第二種方式:操作元素的類(物件.className=類;)

例如:

var parent = document.getElementById("parent");
 //改變className
 var child0 = document.createElement("div");
 child0.innerHTML = "child0";
 child0.className = "newDiv";
parent.appendChild(child0); 

098.靜態網頁和動態網頁的聯絡和區別

聯絡:

1)靜態網頁是網站建設的基礎,靜態網頁和動態網頁都要使用到HTMl語言。

2)靜態網頁是相對於動態網頁而言,指沒有後臺數據庫、不含程式和不可互動的網頁、是標準的HTML檔案,它的副檔名是.htm或.html。你編的是什麼它顯示的就是什麼、不會有任何改變。

3)靜態網頁和動態網頁之間並不矛盾,為了網站適應搜尋引擎檢索的需要,動態網站可以採用靜動結合的原則,適合採用動態網頁的地方用動態網頁,如果必要使用靜態網頁,則可以考慮用靜態網頁的方法來實現,在同一個網站上,動態網頁內容和靜態網頁內容同時存在也是很常見的事情。

區別:

1)程式是否在伺服器端執行,是重要標誌。在伺服器端執行的程式、網頁、元件,屬於動態網頁,它們會隨不同客戶、不同時間,返回不同的網頁,例如ASP、PHP、JSP、http://ASP.net、CGI等。運行於客戶端的程式、網頁、外掛、元件,屬於靜態網頁,例如html頁、Flash、javascript、VBscript等等,它們是永遠不變的。

2)程式設計技術不同。靜態網頁和動態網頁主要根據網頁製作的語言來區分。靜態網頁使用語言:HTML。 動態網頁使用語言:HTML+ASP 或 HTML+PHP 或 HTML+JSP 等其它網站動態語言。

3)被搜尋引擎收錄情況不同。由於程式設計技術不容,靜態網頁是純粹HTML格式的網頁,頁面內容穩定,不論是網頁是否被訪問,頁面都被儲存在網站伺服器上,很容易被搜尋引擎收錄。而動態網頁的內容是當用戶點選請求時才從資料庫中調出返回給使用者一個網頁的內容,並不是存放在伺服器上的獨立檔案,相比較於靜態網頁而言,動態網頁很難被搜尋引擎收錄。

4)使用者訪問速度不同。使用者訪問動態網頁時,網頁在獲得搜尋指令後經過資料庫的調查匹配,再將與指令相符的內容傳遞給伺服器,通過伺服器的編譯將網頁編譯成標準的HTML程式碼,從而傳遞給使用者瀏覽器,多個讀取過程大大降低了使用者的訪問速度。而靜態網頁不同,由於網頁內容直接存取在伺服器上,省去了伺服器的編譯過程,使用者訪問網頁速度很快。

5)製作和後期維護工作量不同。動態網頁的設計以資料庫技術為基礎,可以實現多種功能,降低了網站維護的工作量。而靜態網頁由於沒有資料庫的支援,網頁內容更改時需要直接修改程式碼,在網站內容製作和維護中,所需的工作量更大。動態網頁與靜態網頁各有特點,網站設計師在網頁設計時,主要根據網站的功能需求和網站內容多少選擇不同網頁。如,網站包含資訊量太大時,就需要選擇動態網頁,反之,則選擇靜態網頁。

099.JSP/ASP/PHP的比較

ASP(Active Server Pages),JSP(JavaServer Pages),PHP(Hypertext Preprocessor)是目前主流的三種動態網頁語言。

ASP是微軟(Microsoft)所開發的一種後臺指令碼語言,它的語法和Visual BASIC類似,可以像SSI(Server Side Include)那樣把後臺指令碼程式碼內嵌到HTML頁面中。雖然ASP簡單易用,但是它自身存在著許多缺陷,最重要的就是安全性問題。

PHP是一種跨平臺的伺服器端的嵌入式指令碼語言。它大量地借用C,Java和Perl語言的語法, 並耦合PHP自己的特性,使WEB開發者能夠快速地寫出動態產生頁面。它支援目前絕大多數資料庫。

JSP是一個簡化的Servlet,它是由Sun公司倡導、許多公司參與一起建立的一種動態網頁技術標準。JSP技術有點類似ASP技術,它是在傳統的網頁HTML中插入Java程式段和JSP標記(tag),從而形成JSP檔案,字尾名為(*.jsp)。 用JSP開發的Web應用是跨平臺的,既能在Linux下執行,也能在其他作業系統上執行。

ASP優點: 無需編譯、易於生成、獨立於瀏覽器、面向物件、與任何ActiveX scripting 語言相容、源程式碼不會外漏。

缺點:

1)Windows本身的所有問題都會一成不變的也累加到了它的身上。安全性、穩定性、跨平臺性都會因為與NT的捆綁而顯現出來。

2)ASP由於使用了COM元件所以它會變的十分強大,但是這樣的強大由於Windows NT系統最初的設計問題而會引發大量的安全問題。只要在這樣的元件或是操作中一不注意,那麼外部攻擊就可以取得相當高的許可權而導致網站癱瘓或者資料丟失。

3)還無法完全實現一些企業級的功能:完全的叢集、負載均橫。

PHP優點:

1)一種能快速學習、跨平臺、有良好資料庫互動能力的開發語言。

2)簡單輕便,易學易用。

3 ) 與Apache及其它擴充套件庫結合緊密。

缺點:

1 ) 資料庫支援的極大變化。

2 ) 不適合應用於大型電子商務站點。

JSP優點:

1 ) 一處編寫隨處執行。

2 ) 系統的多臺平支援。

3 ) 強大的的可伸縮性。

4 ) 多樣化和功能強大的開發工具支援。

缺點:

1) 與ASP一樣,Java的一些優勢正是它致命的問題所在。

2 ) 開發速度慢

100.CGI/Servlet/JSP的比較

CGI(Common Gateway Interface),通用閘道器介面,是一種根據請求資訊動態產生迴應內容的技術。

通過CGI,Web 伺服器可以將根據請求不同啟動不同的外部程式,並將請求內容轉發給該程式,在程式執行結束後,將執行結果作為迴應返回給客戶端。也就是說,對於每個請求,都要產生一個新的程序進行處理。

Servlet 是在伺服器上執行的小程式。在實際執行的時候Java Servlet與Web伺服器會融為一體。與CGI不同的是,Servlet對每個請求都是單獨啟動一個執行緒,而不是程序。這種處理方式大幅度地降低了系統裡的程序數量,提高了系統的併發處理能力。

比較:

1) JSP從本質上說就是Servlet。JSP技術產生於Servlet之後,兩者分工協作,Servlet側重於解決運算和業務邏輯問題,JSP則側重於解決展示問題。

2 ) 與CGI相比,Servlet效率更高。Servlet處於伺服器程序中,它通過多執行緒方式執行其service方法,一個例項可以服務於多個請求,並且其例項一般不會銷燬。而CGI對每個請求都產生新的程序,服務完成後就銷燬,所以效率上低於Servlet 。

3)與CGI相比,Servlet更容易使用,功能更強大,具有更好的可移植性,更節省投資。在未來的技術發展過程中,Servlet有可能徹底取代CGI。