JSP全名為Java Server Pages,java伺服器頁面。JSP是一種基於文本的程式,其特點就是HTML和Java代碼共同存在!JSP是為了簡化Servlet的工作出現的替代品,Servlet輸出HTML非常困難,JSP就是替代Servlet輸出HTML的。JSP本身就是一種Servlet ...
JSP全名為Java Server Pages,java伺服器頁面。JSP是一種基於文本的程式,其特點就是HTML和Java代碼共同存在!JSP是為了簡化Servlet的工作出現的替代品,Servlet輸出HTML非常困難,JSP就是替代Servlet輸出HTML的。JSP本身就是一種Servlet。為什麼我說JSP本身就是一種Servlet呢?其實JSP在第一次被訪問的時候會被編譯為HttpJspPage類(該類是HttpServlet的一個子類)。
編譯過程是這樣子的:瀏覽器第一次請求1.jsp時,Tomcat會將1.jsp轉化成1_jsp.java這麼一個類,並將該文件編譯成class文件。編譯完畢後再運行class文件來響應瀏覽器的請求。以後訪問1.jsp就不再重新編譯jsp文件了,直接調用class文件來響應瀏覽器。當然了,如果Tomcat檢測到JSP頁面改動了的話,會重新編譯的。
說到底,JSP就是封裝了Servlet的java程式罷了,JSP的本質其實就是Servlet。只是JSP當初設計的目的是為了簡化Servlet輸出HTML代碼。我們一般的模式是:在Servlet處理好的數據,轉發到JSP,JSP只管對小部分的數據處理以及JSP本身寫好的頁面。