第一個JSP—HelloWorld!每一次的"初戀"都帶著神秘感,揭開JSP神秘的面紗!
JSP也是j2ee的一個規范。
JSP(java service Page),是由sun公司倡導、許多公司參與一起建立的動態網頁技術標准。
JSP與html的區別是在網頁中嵌入java代碼和JSP標記,形成.jsp的文件。
JSP開發的web應用是跨平台的,既能在Linux下運行,也能在其他操作系統上運行。
剛學過了Servlet,後學的JSP,據說是因為我們使用Servlet,在返回頁面給客戶端時太多的html代碼太繁瑣,並且一點改動了servlet代碼就要重新編譯一次重新啟動tomcat重新發送到客戶端比較繁瑣,並且我們如果對返回頁面進行一些美化的話也不是很方便,於是人家sun公司就為程序員考慮周全了。
於是JSP應運而生。
那JSP運行的機制呢?我們寫一個HelloWorld.jsp文件,啟動tomcat服務器,便可運行成功,但是這個過程是如何實現的?JSP與Servlet什麼關系?JSP和ASP什麼關系?下面我們一一來探討。
第一個.jsp文件:
<html>
<head>
<title>HelloWorldJSP~</title>
</head>
<body>
<%
out.println("HelloWorld");
%>
</body>
</html>
JSP頁面是如何實現的?機制?
其實就是當你通過http請求一個JSP頁面是,首先Tomcat會講JSP編譯成為Servlet,然後執行Servlet.
詳細說說這個運行過程:
1, 首先web客戶端發送URL請求給Tomcat。服務器獲得請求,對請求字符串分析,如果後綴名是.jsp文件的,則Tomcat把調用JspServlet處理。JspServlet是
2, 如果JSP文件第一次被調用,則會把jsp編譯成servlet,如果jsp不是第一次調用則不會被編譯。Jsp文件在沒有修改的情況下,只會編譯一次。
3, Tomcat調用service()方法編譯jsp文件,創建一個.java和.class文件。該java文件繼承自父類HttpJspBase類。
4, 創建HttpServletRequest類和HttpServletResponse類
5, 調用.java繼承父類的HttpJspBase類方法service(request,response)
6, 在service方法裡面調用jspService(request,reponse)方法,渲染html返回給客戶端。
JSP和Servlet關系?
初次接觸JSP和Servlet,前面已經說了,JSP是後Servlet出現的。JSP的運行機制也比較了解了,其實JSP就是Servlet,只不過一些重復的事情讓Tomcat去做了。JSP彌補了Servlet的不足之處,更加人性化了。
不同之處:
Servlet完全是java代碼構成,擅長流程控制和事務處理
JSP由HTML代碼和JSP標簽構成,可以方便地編寫動態網頁。
因此實際中采用servlet來控制業務流程,而采用JSP來生成動態網頁。
JSP相當於JAVA和Html可以組合在一起的一個擴展名為.jsp的文件。
JSP側重視圖,Sevlet主要用於控制邏輯。