|
什么是Servlet和JSP
用Java開發(fā)Web應(yīng)用程序時(shí)用到的技術(shù)主要有兩種,即Servlet和JSP。 Servlet是在服務(wù)器端執(zhí)行的Java程序,一個(gè)被稱為Servlet容器的程序(其實(shí)就是服務(wù)器) 負(fù)責(zé)執(zhí)行Java程序。而JSP(Java Server Page)則是一個(gè)頁面, 由JSP容器負(fù)責(zé)執(zhí)行。
Servlet和JSP兩者最大的區(qū)別就是,Servlet以Java程序?yàn)橹鳎?輸出HTML代碼時(shí)需要使用out.println函數(shù),也就是說Java中內(nèi)嵌HTML; 而JSP則以HTML頁面為主,需要寫Java代碼時(shí)則在頁面中直接插入Java代碼, 即HTML中內(nèi)嵌Java。典型的例子如下:
JSP文件
復(fù)制代碼 代碼如下:
<html>
<body>
<h1>
<% out.println("JSP"); %>
</h1>
</body>
</html>
Servlet
復(fù)制代碼 代碼如下:
public class MyServlet ... {
...
out.println("<html>");
out.println("<body>");
out.println("<h1>");
out.println("Servlet);
out.println("</h1>");
out.println("</body>");
out.println("</html>");
}
可見,JSP便于輸出,而Servlet便于進(jìn)行邏輯處理。因此實(shí)際應(yīng)用中兩者常常結(jié)合使用,各司其職。
而Tomcat就是上面提到的Servlet容器和JSP容器。 各個(gè)版本對(duì)Servlet/JSP協(xié)議支持的情況如下:
Tomcat版本 | 支持Servlet | 支持JSP |
6.0.x | 2.5 | 2.1 |
5.5.x | 2.4 | 2.0 |
4.1.x | 2.3 | 1.2 |
3.3.x | 2.2 | 1.1 |
Web應(yīng)用程序的結(jié)構(gòu)
Tomcat安裝好以后, 可以去看看tomcat目錄下的webapps目錄。這個(gè)目錄就是用來保存Web應(yīng)用程序的。
上圖的根目錄就是應(yīng)當(dāng)放置在 webapps 目錄下的目錄。WEB-INF目錄無法從瀏覽器中訪問。 WEB-INF/classes下保存的是編譯后的Java程序(主要是Servlet),WEB-INF/lib 下保存的是 運(yùn)行時(shí)使用的庫文件(.jar文件),web.xml則是整個(gè)應(yīng)用程序的配置信息。
其他文件例如 .jsp、圖片、Javascript腳本等,都可以直接放到Web應(yīng)用程序的根目錄下。
MVC模型
所謂MVC模型就是將數(shù)據(jù)、邏輯處理、用戶界面分離的一種方法。
- M(Model, 模型):用于數(shù)據(jù)處理、邏輯處理。
- V(View,視圖):用于顯示用戶界面。
- C(Controller,控制器):根據(jù)客戶端的請(qǐng)求控制邏輯走向和畫面。
而在Java中,MVC這三個(gè)部分則分別對(duì)應(yīng)于 JavaBeans、JSP和Servlet。
- M = JavaBeans:用于傳遞數(shù)據(jù),擁有與數(shù)據(jù)相關(guān)的邏輯處理。
- V = JSP:從Model接收數(shù)據(jù)并生成HTML
- C = Servlet:接收HTTP請(qǐng)求并控制Model和View
畫成圖則如下所示:
jsp技術(shù):JSP與Servlet的介紹說明,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。