jsp-servlet-tomcat理論基礎

Servlet:

在說jsp之前需要先說明一下servlet
瀏覽器--服務器--數據庫:
這個圖說明的是簡單的登錄過程,在從瀏覽器到後端服務器的過程中,Servlet在其中做的事情。
簡單理解Servlet: 實現了Http協議,作爲一種控制器,做轉向和基礎的處理業務信息。
數據庫--服務器--瀏覽器:
不僅僅是從瀏覽器到服務器的過程,還有從數據庫查詢到數據,返回到服務器後,在傳到瀏覽器之前,對返回的數據進行渲染,這個工作也是servlet做的.但因爲servlet是用java語言編程的,所以在渲染的時候,需要用拼接字符串的形式,把需要的樣式標籤拼接成字符串返回到瀏覽器,瀏覽器會識別標籤,進行樣式的渲染。
所以有了JSP的出現

JSP:

爲了方便編程渲染頁面樣式,更簡單實現servlet的部分功能,不需要我們再去自己拼寫html標籤或者樣式,jsp去做了這個事情。
JSP繼承了Servlet,把後臺返回的數據進行渲染。jsp在執行的時候編譯生成了對應的class和java文件。
在web項目中會使用tomcat來管理servlet和對jsp進行編譯

tomcat:

可以理解爲是servlet的容器,可以管理servlet的生命週期,以及對需要的類進行反射處理也就是實例化。
servlet的生命週期的特點: 實例化一次有多個線程,線程不安全:
手寫servlet中涉及到的繼承HttpServlet,重寫doGet或doPost,或者通過Servlet獲取tomcat中的SessionId返回到前端
tomcat--servlet之間:
在tomcat運行的時候,創建了HttpServletRequest類,包含了用戶從html提交的各種信息以及IP,請求方式get.post等。 也創建了HttpServletResponse類,他可以接受後端返回的html的數據返回到前段
通過tomcat的web.xml配置文件找到對應的繼承了HttpServlet類的servlet類,並且通過反射做了對這個編譯後的類進行實例化。
下圖以根據日期查詢學生信息爲例,描述tomcat在這個過程中做的事情;
tomcat--servlet--jsp:
下圖描述通過url訪問jsp頁面的過程:
ps:和tomcat相關:
1、cookie和Session :一個是客戶端一個是服務端用來保存一些信息 符合了HTTP中的無狀態通信中的特點,可以在tomcat配置的Session信息有效時間內
2、tomcat的啓動,代碼,所以也需要java的基礎運行環境,配置相應的文件路徑,java_home下配置相應的tomcat的相關路徑;也可以在startup文件下set對應的路徑;或者在根目錄下臨時寫set tomcat路徑,只能臨時有效。
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章