JSP的英文名叫Java Server Pages,翻譯為中文是Java服務器頁面的意思,其底層就是一個簡化的Servlet設計,是由sum公司主導參與建立的一種動態網頁技術標准。Servlet 就是 Java 編程語言中的一個類,它被用來擴展服務器的性能。
JSP的執行過程和生命周期
JSP的執行過程和生命周期,如下圖:
Servlet的生命周期
Servlet的生命周期主要分為以下三個階段:一是容器初始化。即init()
,二是調用service()
方法,判斷客戶端請求的方式。最后是銷毀,調用destroy()
方法。
詳細的 Servlet 生命周期示意圖如下:
JSP與Servlet的優缺點比較
- JSP優點:提高代碼的可復用性、將HTML代碼進行分離、程序利於開發維護。
- JSP缺點:不容易跟蹤與排錯。不能處理流程和業務邏輯。
- Servlet優點是響應客戶端的請求,根據請求動態響應,最大的優點是作為一個服務,控制程序的流向,過濾等。MVC中的C就是servlet。
- Servlet缺點:Servlet在表示邏輯上對於視圖的表示相對於JSP麻煩太多,在負責顯示工作完成並生成頁面上,JSP更優。
編寫第一個JSP文件
編寫第一個JSP文件,為解決跳轉路徑問題,可在頭部加上
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";
%>
如下圖:
編寫第一個Servlet程序
編寫第一個Servlet程序,這里使用Servlet3.0,不需在web.xml中配置,可自己設置名稱,但必須要與頁面中form表單中的action對應。如下圖: