1. 程式人生 > >Jsp與Servlet的關係以及Jsp與Html的區別

Jsp與Servlet的關係以及Jsp與Html的區別

首先,一定要知道的是:所有的網頁最終顯示的都是HTML程式碼,我們現在所看到的網頁都是靜態頁面,都是由HTML組成的。任何的動態語言都不能脫離HTML而單獨存在於一個網站上,因為沒有靜態的頁面顯示,無法給使用者返回資料。
1. Jsp和Html的區別:
HTML:是靜態語言,是事先由使用者寫好放在伺服器上,由web伺服器向客戶端(瀏覽器)傳送,是瀏覽器程式碼,可以通過瀏覽器直接開啟。
Jsp:全名為Java Server Pages,中文名叫java伺服器頁面,是動態語言,它是在傳統的網頁HTML(標準通用標記語言的子集)檔案(.htm,.html)中插入Java程式段(Scriptlet)和JSP標記(tag),從而形成JSP檔案,字尾名為(*.jsp)。需要先編譯成servlet程式,再編譯成servlet位元組碼(.class檔案),再動態生成HTML頁面返回給客戶端(瀏覽器)。jsp只能釋出在Tomcat等其它的Servlet容器上才能開啟。
可以把HTML看作是介面,把asp\jsp\PHP等看作是後臺程式碼。(最後經過伺服器處理後成為html程式碼呈現在使用者眼前)

2.Jsp和Html的處理流程案例:
這裡寫圖片描述

3.Jsp和Servlet的關係:
JSP,其根本是一個簡化的Servlet設計,由以上圖片可知,jsp在伺服器端最後是通過轉化為Servlet執行,是在伺服器端執行,我們在瀏覽器端看到的jsp實際上是由它動態生成的HTML頁面。
jsp可以完成的功能,Servlet也可以完成,但是表示頁面元素的時候會生成很多out.println()語句,而且Java語言和HTML語言混合在一塊兒使用造成頁面顯示和業務邏輯都混合在一塊兒,複用性和可維護性都很差;運用jsp與Servlet結合使用時就可以很好的將頁面展示資訊與業務邏輯分開,開發和維護都很方便。jsp負責頁面顯示,Servlet負責業務邏輯控制。