JSP小結__JSP

來源:互聯網
上載者:User

JAVA SERVER PAGE

JSP本身就是Servlet所以具有Servlet的所有優點。

JSP在JSP第一次被訪問時轉換為Servlet。
extends HttpJspBase
並將其編譯成.class。

JSP:
效能優良
平台無關
tag可拓展

NEWS:
JSTL
JSF
標籤文法,是新推出的。便於處理的簡單的標籤文法。


Grammers:
1.declaration
2.scriptlet
3.expression
4.comment
5.directives
6.action動作指令
7.內建對象


1.declaration
<%!
 int accessCount = 0;                    //Servlet的成員變數
 void m(){}                            //Servlet的成員函數
%>

2.scriptlet:
<%
 int i;                                  //注意在<!%%>中聲明的區別:在<%%>局部變數
 java code
%>

<%=++account%>
==
<%%out.println(++account);%>

4.comments

用戶端注釋:(不能啟動屏蔽語句的作用)
<%!-- --%>


伺服器端注釋:
<%-- --%>

<%
 //
 
 /*
 */
%>


注意小心伺服器端的代碼與用戶端的代碼是不可以互相調用的。

<script>
 <%out.println("var i = 0");%>
 alert(i);
</script>

沒問題。
動態產生Java指令碼


jsp  ---  》  servlet  ------  》 browser


5.directives(編譯指令)
<%@XXXX   atr1=""%>

page
include
taglib

 

指明與容器的溝通方式
<%@page import="java.util.*" | buffer="none|kb size8k"
| isErrorPage="true|false" | errorPage="url"
| contentType=""%>


方便重用:靜態包含,訪問同個request,包含頁面的contentType必須相同,不可傳參
<%@include file="url"%>
1.編譯前包含
2.同一個Servlet

註:包含時的代碼去掉不必要的部分


6.動作指令action
<jsp:include page="url" flush="true">
 <jsp:param name= value=>
 <jsp:param name= value=>
 <jsp:param name= value=>
</jsp:include>
雖說不是一個對象,(產生兩個.class)被包含的頁面可以使用包含頁面接受的參數,可以如上傳參,消極式載入

被包含的request 》 包含的request

靜態包含與動態包含的區別。

執行時間段不同
容器對其的處理:一個servlet連個servlet
傳參數
request所包含的參數:一個同,一個是被包含的包含了包含的request同時有自己的資訊。

 

 


response.sendRedirect("");
訪問另一個Servlet當前處理Servlet繼續運行

命令瀏覽器:重新寫地址


不能使用前一個頁面的參數資訊
本Servlet代碼繼續執行,除非在後面加入:return;
速度慢
可以在url中傳參數
/代表的是:http://127.0.1/


<jsp:forword page="">
地址欄不變:

可得到上個頁面的內容
本Servelt不會繼續執行
速度快
可以傳參數
/代表的是http://127.0.0.1/project/

this.getServletContext().getDispatcher().forward();

 


在jsp中使用javabean
必須有個無參數的構造方法
getters  and setters


<jsp:usebean id="" class="" scope="">
</jsp:usebean>

<jsp:setProperty name="id" property="" value="">
<jsp:getProperty name="id" proterty="">

scope:
page                        預設
request
application
sesssion


解決亂碼問題:

 

 

 

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.