閱讀521 返回首頁    go 阿裏雲 go 技術社區[雲棲]


servlet 和 jsp

Servlet:
缺點:
顯示HTML的時候,麻煩。out.println("<html>");
優點:
Servlet就是一個Java類。編寫容器。
調試容易。IDE。



jsp

JSP=HTML+Java代碼
Java Server Pages(Java服務器端頁麵)


1.JSP和Servlet區別:
JSP和Servlet是本質相同的技術。容器負責編譯JSP-----Servlet
表現形式。
Servlet---Java類
JSP-------文本(靜態資源)

1.JSP以源文件部署到容器中。(Servlet需要編譯成class文件後,部署到容器中)
2.JSP部署到容器的根目錄下,和靜態資源位於相同的目錄。(WEB-INF/classes)
3.容器編譯JSP的源文件到Servlet class類:有第一個請求訪問JSP的時候,容器編譯。如果部署到容器中的JSP源文件被修改了,容器會重新的編譯JSP到Servlet
4.JSP---Servlet,類名:文件名_jsp.java
5.JSP中的HTML的代碼後被JSP引擎放入到Servlet的out.write()函數中。


在JSP中的嵌入Java代碼必須放在指定的標記中。
1.JSP的三種原始標簽
2.JSP的指令標簽
3.JSP的動作標簽
4.在JSP2.0規範後,提出EL表達式
5.自動以的標簽(JSTL標簽庫,struts標簽庫,分頁標簽庫)


JSP中原始的三種標簽

<%! %>------聲明標簽,聲明變量和函數(聲明的變量是成員變量,函數是和_jspService並列的函數體)
<%  %>------腳本標簽  編譯在_jspService函數體的內部
<%=Java表達式 %>------賦值標簽  out.println(add(3,4));


練習1:
以20%概率顯示你中獎了!~

練習2:
把背景顏色根據輸入的值進行改變用JSP來實現。

JSP的指令標簽:

<%@ 標簽名  屬性=值 屬性=值。、。。。 %>
page include

<%@ page language="java"%>
language="java":
import="java.util.*,com.bluedot.User,"
<%@ page import="java.util.*"%>
<%@ page import="com.bluedot.User"%>

pageEncoding="UTF-8"----告訴JSP引擎,在解析我們的JSP的文件的時候用什麼編碼方式
                    ----
contentType="text/html; charset=utf-8"

response.setContentType("text/html; charset=utf-8");

練習3:
把給客戶端產生excel表格的例子改成用JSP來實現。(字符型響應)

<%@ page errorPage="error.jsp"%>

JSP中的內置對象(暗對象):9個
JSP                              Servlet中的類型
request-------------------------HttpServletRequest
response------------------------HttpServletResponse
application---------------------ServletContext
session-------------------------HttpSession(受指令標簽page的session屬性控製,默認可以使用)
config--------------------------ServletConfig
out-----------------------------PrintWriter(JspWriter)
exception-----------------------Exception(有條件的出現,當page指令的標簽的isErrorPage為true的時候)
page
pageContext


最後更新:2017-04-03 15:21:51

  上一篇:go 寫給女兒高中編程課老師的一封信
  下一篇:go 大眾點評筆試算法之質因數分解