15年來,為全國50萬+企業提供互聯網數字化基礎應用服務。
知 識
0514-86177077
9:00-17:00(工作日)
首 頁
企業400電話
Hot
網站?建設
微網小程序
商標?知產
網絡營銷推廣
AI電話機器人
熱
彩鈴?短信
增值拓展業務
新
主頁
>
知識庫
> JSP模板應用指南(下)
JSP模板應用指南(下)
熱門標簽:
山東智能云外呼管理系統
四川電信外呼系統靠譜嗎
電銷外呼系統 排行榜
珠海銷售外呼系統運營商
地圖標注制作道路
地圖標注創業項目入駐
長春回撥外呼系統廠家
外呼系統啥意思
廣州三五防封電銷卡
執行模板
這里所討論的模板將在三種定制標簽下執行:
Template: insert
Template: put
Template: get
insert 標簽中包含一個模板,但是在包含之前,put 標簽存儲有一些信息——name, URI和Boolean 值(用來指定將內容是包含還是直接顯示)——關于模板所包含的內容。在template:get中包含(或顯示)了指定的內容,隨后將訪問這些信息。
template:put 把Bean 存儲在請求區域(但并不直接存儲),因為如果兩個模板使用了相同的內容名,一個嵌套模板就將覆蓋封裝模板中的內容。
為了保證每一個模板能夠只存取它自己的信息,template:insert 保留了一個hashtable堆棧。每一個insert 開始標簽建立一個 hashtable并把它放入堆棧。封裝的put 標簽建立bean并把它們保存到最近建立的hashtable中。隨后,在被包含模板中的 get 標簽訪問hashtable中的bean。圖 4 顯示了堆棧是如何被保留的。
圖 4. 在請求區域存儲模板參數 點擊放大(24 KB)
在圖 4中每一個模板訪問正確的頁腳、footer.html 和footer_2.html。如果 bean被直接存儲在請求區域,圖 4中的step 5將覆蓋在step 2中指定的footer bean。
模板標簽執行
接下來我們將分析三個模板標簽的執行: insert, put和get。我們先從圖 5開始。這個圖表說明了當一個模板被使用時,insert和put標簽事件的執行順序。
圖 5. put和insert 標簽執行順序 點擊放大(24 KB)
如果一個模板堆棧已經不存在,insert 開始標簽就會建立一個并把它放置到請求區域。隨后一個hashtable也被建立并放到堆棧中。
每一個 put 開始標簽建立一個PageParameter bean,并存儲在由封裝的insert標簽建立的hashtable中。
插入 end 標簽包含了這個模板。這個模板使用get標簽來訪問由put標簽建立的bean。在模板被處理以后,由insert 開始標簽建立的hashtable就從堆棧中清除。
圖 6顯示template:get的順序圖表。
圖 6. get標簽的順序圖表 點擊放大(11 KB)
模板標簽列表
標簽handler很簡單。在例 3.a中列出了Insert標簽類——標簽handler。
例 3.a. InsertTag.java
packagetags.templates;
import java.util.Hashtable;
import java.util.Stack;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.PageContext;
import javax.servlet.jsp.tagext.TagSupport;
public class InserttagextendstagSupport {
private Stringtemplate;
private Stack stack;
// setter method fortemplate 屬性
public void setTemplate(Stringtemplate) {
this.template =template;
}
public int doStartTag() throws JspException {
stack = getStack(); // obtain a reference to thetemplate stack
stack.push(new Hashtable()); // push new hashtable onto stack
return EVAL_BODY_INCLUDE; // pass tagbody through unchanged
}
public int doEndTag() throws JspException {
try {
pageContext.include(template); // includetemplate
}
catch(Exception ex) { // IOException or ServletException
throw new JspException(ex.getMessage()); // recast exception
}
stack.pop(); // pop hashtable off stack
return EVAL_PAGE; // evaluate the rest of the page after the tag
}
// taghandlers should always implement release() because
// handlers can be reused by the JSP container
public void release() {
template = null;
stack = null;
}
public Stack getStack() {
// try to get stack from request scope
Stack s = (Stack)pageContext.get屬性(
"template-stack",
PageContext.REQUEST_SCOPE);
// if the stack's not present, create a new one和
// put it into request scope
if(s == null) {
s = new Stack();
pageContext.set屬性("template-stack", s,
PageContext.REQUEST_SCOPE);
}
return s;
}
}
例 3.b 列出了 Put標簽類和標簽handler:
例 3.b. PutTag.java
packagetags.templates;
import java.util.Hashtable;
import java.util.Stack;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.TagSupport;
import beans.templates.PageParameter;
public class PuttagextendstagSupport {
private String name, content, direct="false";
// setter methods for Put tag attributes
public void setName(String s) { name = s; }
public void setContent(String s) {content = s; }
public void setDirect(String s) { direct = s; }
public int doStartTag() throws JspException {
// obtain a reference to enclosing insert tag
Inserttagparent = (InsertTag)getAncestor(
"tags.templates.InsertTag");
// puttags must be enclosed in an insert tag
if(parent == null)
throw new JspException("PutTag.doStartTag(): " +
"No Inserttagancestor");
// gettemplate stack from insert tag
Stacktemplate_stack = parent.getStack();
//template stack should never be null
if(template_stack == null)
throw new JspException("PutTag: notemplate stack");
// peek at hashtable on the stack
Hashtable params = (Hashtable)template_stack.peek();
// hashtable should never be null either
if(params == null)
throw new JspException("PutTag: no hashtable");
// put a new PageParameter in the hashtable
params.put(name, new PageParameter(content, direct));
return SKIP_BODY; // not interested in tagbody, if present
}
// taghandlers should always implement release() because
// handlers can be reused by the JSP container
public void release() {
name = content = direct = null;
}
// convenience method for finding ancestor names with
// a specific class name
privatetagSupport getAncestor(String className)
throws JspException {
Class klass = null; // can't name variable "class"
try {
klass = Class.forName(className);
}
catch(ClassNotFoundException ex) {
throw new JspException(ex.getMessage());
}
return (TagSupport)findAncestorWithClass(this, klass);
}
}
PutTag.doStarttag建立了一個 PageParameter bean – 在例 3.c中列出——然后存儲到請求區域。
例 3.c. PageParameter.java
package beans.templates;
public class PageParameter {
private String content, direct;
public void setContent(String s) {content = s; }
public void setDirect(String s) { direct = s; }
public String getContent() { return content;}
public boolean isDirect() { return Boolean.valueOf(direct).booleanValue(); }
public PageParameter(String content, String direct) {
this.content = content;
this.direct = direct;
}
}
PageParameter將作為簡單的占位符使用。我們來看一看例 3.d中的Gettag類和tag handler:
例 3.d. GetTag.java
packagetags.templates;
import java.util.Hashtable;
import java.util.Stack;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.PageContext;
import javax.servlet.jsp.tagext.TagSupport;
import beans.templates.PageParameter;
public class GettagextendstagSupport {
private String name;
// setter method for name attribute
public void setName(String name) {
this.name = name;
}
public int doStartTag() throws JspException {
// obtain reference totemplate stack
Stack stack = (Stack)pageContext.get attribute (
"template-stack", PageContext.REQUEST_SCOPE);
// stack should not be null
if(stack == null)
throw new JspException("GetTag.doStartTag(): " +
"NO STACK");
// peek at hashtable
Hashtable params = (Hashtable)stack.peek();
// hashtable should not be null
if(params == null)
throw new JspException("GetTag.doStartTag(): " +
"NO HASHTABLE");
// get page parameter from hashtable
PageParameter param = (PageParameter)params.get(name);
if(param != null) {
String content = param.getContent();
if(param.isDirect()) {
// print content if direct attribute is true
try {
pageContext.getOut().print(content);
}
catch(java.io.IOException ex) {
throw new JspException(ex.getMessage());
}
}
else {
// include content if direct attribute is false
try {
pageContext.getOut().flush();
pageContext.include(content);
}
catch(Exception ex) {
throw new JspException(ex.getMessage());
}
}
}
return SKIP_BODY; // not interested in tagbody, if present
}
// taghandlers should always implement release() because
// handlers can be reused by the JSP container
public void release() {
name = null;
}
}
GetTag.doStartTag從請求區域返回了頁面參數bean并從bean中獲得了content和direct 屬性。然后,內容可以根據direct屬性值選擇是被包含還是顯示。
結論
模板是一種簡單而有非常有用的概念。模板的封裝布局能夠對布局改變的影響達到最小化。而且模板能夠根據用戶的不同來區分不同的內容,它還能夠嵌套到其他的模板和JSP頁面中。
全文完>
標簽:
保定
潮州
紹興
北海
肇慶
玉樹
廣元
吳忠
巨人網絡通訊聲明:本文標題《JSP模板應用指南(下)》,本文關鍵詞 JSP,模板,應用,指南,下,JSP,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
相關文章
下面列出與本文章《JSP模板應用指南(下)》相關的同類信息!
JSP模板應用指南(下)
執行模板 這里所討論的模板將在三種定制標簽下執行: Template: insert Template: put Template: get insert 標簽中包含一個模板,但是在包含之前,put 標簽存儲有一些信息——name, URI和Boolean 值(...
10-18
曲周水果店電話機器人(水果店座機電話)
本文目錄一覽:1、電話機器人是什么?2、什么是電話機器人?3、電話機器人功能有哪些呢?4、電話機器人有什么用?5、有用過電...
06-20
Lua常用時間函數使用實例
-- 獲取當前的格林尼治時間print(os.time())-- 獲取當前時間的字符串表示,形如:11/28/08 10:28:37print(os.date())-- 獲取當前日期的字...
10-18
自動電銷機器人好嗎(機器人電銷和人工電銷)
本文目錄一覽: 1、請問電銷機器人真的好用嗎?用過的來2、電話機器人好用嗎,有什么優勢?3、電話機器人效果好不好?...
11-27
臨沂電銷機器人廠家(臨沂電銷機器人廠家地址)
本文目次一覽: 1、做德律風呆板人的那么多,哪家更好呢? 2、有誰用過電銷呆板人?哪個公司的對照好? 3、電銷呆板人開...
11-25
影響網站排名好壞的因素分析
至于次因呢?就是自己沒有題材可以寫,不知道該寫些什么,給自己找個借口吧!其實做我們這一行的,應該都很清楚,原創兩...
10-19
智慧與共享并存,遠傳獲浙江省科技進步獎
近日,浙江省科學技術廳發布了《2019年度浙江省科學技術獎行業評審結果公示》。由杭州遠傳新業科技有限公司、杭州電子...
10-19
python 利用PyAutoGUI快速構建自動化操作腳本
目錄 一、背景 二、自動化的方案 三、思路和知識點 四、操作步驟 4.1 初識 PyAutoGUI 4.2 坐標系 4.3 點擊 4.4 輸入 4.5 漢字輸入...
10-18
品牌理念識別系統的設計原則
品牌理念識別系統的每一個設計原則本身就是一種品牌文化,因為品牌理念是品牌文化的核心。品牌理念是品牌形象的靈魂,...
10-23
智能機器人客服有哪些廠家,有什么優勢?
隨著互聯網的發展,企業的需求也在不斷增多,客服作為企業與客戶溝通的橋梁,起著非常重要的作用。隨著人工智能技術的...
07-12
大連防封號電銷系統
大連防封號電銷系統 ,辦理大連防封號 電銷系統 ,大連防封號電銷系統辦理 億卡惠通訊公司 電銷卡 服務商,辦理全國各地電...
11-18
山西省5G不封號系統降價-實力認證
山西省5G不封號系統降價牌宣傳等。如果非要說一個電話機器人的缺點,那可能就是不如人工靈活。但總體來看,電話機器人...
01-15
合并SQL腳本文件的方法分享
概述 -------------------------------------------------------------------------------- 在平時的工作中,我會經常的碰到這樣需要合并SQL腳本的...
10-18
商標與需求
很多企業都明白,營銷是要滿足消費者的需求的,但是當你向他們提出這樣的疑問:你的消費者究竟需要什么?好像總是不能...
10-23
新鄉外呼系統多少錢一個月(外呼系統安全嗎)
本篇文章給大家談談新鄉外呼系統多少錢一個月,以及外呼系統安全嗎對應的知識點,希望對各位有所幫助,不要忘了收藏本...
05-17
無錫房地產呼叫中心軟件供應商,電話銷售系統辦理公司-服務靠譜
無錫房地產呼叫中心軟件供應商,電話銷售系統辦理公司特別是智能問答和智能導航功能,此外,還需要關注平臺是否是否擁...
12-17
電銷卡為什么可以高頻外呼還不會被封?
電銷卡本質上來說就是一款電話卡,是很多電銷人員工作時使用的,許多朋友非常好奇,為什么不使用三大運營商的電話卡,...
03-24
通過換位思考提高客戶服務質量
前幾天看到一則報道:某煙草公司客戶經理利用休息天的時間到零售戶店中,體驗零售戶一天的生活,從而加深了對零售戶的...
10-22
Python 文本滾動播放器的實現代碼
效果 雙擊開始播放,繼續雙擊可以加速播放 右鍵可以彈出菜單:播放、暫停、退出 左鍵可以拖動窗口 代碼 from tkinter impor...
10-18
昆明自動外呼系統加盟(云南外呼公司)
今日給各位共享昆明主動外呼體系加盟的常識,其間也會對云南外呼公司進行解說,假設能可巧處理你現在面對的問題,別忘...
11-07
電銷卡公司封號怎么辦
電銷卡公司封號怎么辦 但是三大運營商發行的普通手機卡,很顯然無法滿足電銷行業的用卡需求,因為對三大運營商已經做...
12-16
安陽企業電銷機器人廠家(安陽市工業電器總公司電器廠)
今天給各位分享安陽企業電銷機器人廠家的知識,其中也會對安陽市工業電器總公司電器廠進行解釋,如果能碰巧解決你現在...
11-06
Unix vmstat 命令詳解寶典
在一個多CPU系統中,vmstat統計所有個數的CPU的平均輸出.為每個進程進行統計.沒有參數時,vmstat顯示每一行是自從系統啟動以后...
10-20
400號碼如何申請(400電話號碼申請流程)
400號碼如何申請(400電話號碼申請流程) 400電話號碼是企業客服、售后服務等聯系客戶的重要工具,如何申請400號碼也成為...
08-14
電話機器人工作效率高的原因有哪些?
電話機器人工作效率高的原因有哪些?想要提高工作效率,怎樣讓人完成巨大的工作量,這個過程還是很簡單,這也是為什么...
10-31
地圖店鋪上添加的圖片怎么換標?地圖店鋪上添加的圖片怎么換?
怎么讓店鋪上美團? 1、在手機里下載“美團開店寶” 2、點擊圖中的“注冊”。 3、設置美團的賬號和密碼,填寫手機號,然...
11-26
使用400電話的公司才靠譜
相信現在的時代不斷進步已經讓人們都看到了幸福,人性化的各種設計給我們帶來了很多的方便。眼下的400電話就是我們需要...
12-22
購買了一個商標31類還需注冊35類嗎?
有些用戶是自己對 商標 31 類 進行了購買,那么這個時候還需要再注冊 35 類嗎? 要看行業 首先對于一個行業來說,往往是不...
10-23
400電話企業辦理400電話,服務精準、高效、專業 、貼心
作為一個專門為企業事業單位設計的國家統一號碼虛擬電話-400電話。 所有撥打北京企業400電話號碼的電話號碼將轉移到預設...
01-12
多彩炫鈴是什么?
多彩炫鈴是什么? 多彩炫鈴是指,系統根據企業設置在不同時段和星期播放個性化的企業彩鈴,也就意味著企業需要根據不...
01-13
寶雞自建外呼系統的簡單介紹
本篇文章給大家談談寶雞自建外呼系統,以及對應的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽:...
05-04
煙臺自動電銷機器人排名(煙臺自動化公司排名)
本文目次一覽: 1、電銷呆板人公司排名,電銷呆板人哪家公司做的對照好 2、電銷呆板品德牌排名,左近客進了前三嗎? ...
11-25
昆明石柱電話機器人(昆明智能機器人)
本文目次一覽: 1、德律風呆板人使用起來怎樣? 2、1183102是什么德律風必修 3、想叨教一下智能語音呆板人一天可能打幾何...
11-25
在線市場和商標侵權責任
現在,提供第三方平臺銷售產品的網站代表了世界上一些最成功的企業。但是,電子商務的快速發展本質意味著商標侵權問題...
10-23
商標使用與商標權侵權判定關系的具體界定
從商標混淆的基本原理和消費者認知的客觀情況看,商標使用應是商標權侵權判定的前提,或者說是侵權得以成立所應當具備...
10-23
信用卡電銷是(信用卡電銷是什么工作)
本文目錄一覽: 1、信譽卡電銷挑選什么意思2、安全信譽卡權益電銷公司在哪里3、交行分期客服電銷是干嘛的4、安全銀行信...
04-22
省長現場出題:南昌成服務外包人才之都四命題待解
13日上午,省政協十屆二次會議聯組討論會第二組的討論正在熱烈進行中,來自科技界別的省政協委員陳蘇關于《大力發展江...
10-22
虛擬400電話,400虛擬號碼辦理
虛擬400電話,400虛擬號碼辦理400電話代理商為你解答。 400虛擬線路也就是簡單給你設置呼叫轉移,也就是在撥打400號碼的時候...
07-20
Windows7下ADSL撥號出現711錯誤的原因和5種解決辦法
一些朋友新安裝了Windows 7,在進行ADSL撥號的時候出現了711錯誤。這是什么原因呢?如何解決?下面就介紹5種方法: ADSL撥號...
10-20
常州電銷卡哪里辦理
常州電銷卡哪里辦理 ,常州 電銷卡 哪里可以辦理, 常州電銷卡代理 小芳通信團隊主要成員均具豐富的行業經驗,以不斷的...
12-04
福州防封電銷防封軟件要多少錢-注意!
福州防封電銷防封軟件要多少錢統自動撥號。支持一鍵生成號段,坐席被動接聽電話,提高了坐席人員的電話接通效率,自動...
01-16
AMD宏圖偉業:2017年必然盈利
在臺北電腦展上,AMD又一次頒布頒發了新的處理器、GPU及辦事器產品計劃,Ryzen處理器繼續完善布局,EPYC辦事器芯片將在6月...
10-16
杭州云外呼系統運營商(杭州云呼網絡科技)
本文目次一覽: 1、此刻外呼零碎行情怎樣?為什么照舊一向不不變 2、外呼零碎是什么必修 3、網絡德律風外呼零碎哪個好?...
11-25
客服管理系統的系統功能有哪些
客服管理系統是目前市面上比較常見的系統平臺,能夠同時實現管理與服務的系統平臺??头芾硐到y不是簡單的只對客服人...
07-13
內蒙古電銷語音機器人培訓(哈爾濱電銷機器人
本文目錄一覽:1、智能語音機器人多少錢一臺,電銷的2、 電話機器人是什么?3、電銷職業想運用語音機器人,有什么好的...
11-29
400開頭錄音電話,有400開頭的電話打電話
400開頭錄音電話,有400開頭的電話打電話400電話代理商為你解答。 在400電話平臺又增加了呼叫中心平臺,從而使400電話具有通...
07-20
邁可先生用IVR智能語音交互系統,釋放人工客服工作量
過去我們花了很多篇幅介紹智能電話機器人在外撥開發業務的技術與應用,然而智能電話機器人更佳的應用是在接聽、也就是...
10-19
手機號被封號了可以解封嗎?
如今大多數企業基本都有電銷模式,而企業基本都是使用普通電話卡進行撥打,所以很容易出現封號的情況,因為普通電話卡...
01-29
ai語音電話機器人案例分析(ai電話機器人到底是什么)
本文目錄一覽:1、AI電話詐騙有多逼真?2、AI電話機器人怎么樣3、AI語音機器人所擁有的優勢4、ai人工電話機器人選哪家實惠...
06-20
福建電話外呼系統好用嗎(廈門外呼系統)
本文目次一覽: 1、被動外呼體系好用嗎? 2、外呼體系好用嗎? 3、外呼體系怎樣樣? 被動外呼體系好用嗎? 我覺得挺好用...
11-25
中山語音外呼系統報價(外呼電話軟件報價)
本文目錄一覽: 1、做電話營銷。一套一鍵外呼體系多少錢?2、外呼體系一個多少錢,有哪些功用?3、外呼體系裝置需求哪...
11-28
JSP模板應用指南(下)
執行模板 這里所討論的模板將在三種定制標簽下執行: Template: insert Template: put Template: get insert 標簽中包含一個模板,但是在包含之前,put 標簽存儲有一些信息——name, URI和Boolean 值(...
10-18
本頁收集關于JSP模板應用指南(下)的相關信息資訊供網民參考!
推薦文章
湖北保險智能外呼系統價格多少
佛山營銷電銷機器人線路
西安打電話機器人
城市地圖標注怎么標
用機器人打電銷后怎么回訪
萬禾企業地圖標注
沈陽智能外呼系統中心
外呼系統那個好
小芯機器人電銷
高德地圖底圖標注怎么設置
貴陽外呼電銷機器人線路
谷歌快捷酒店地圖標注
成都智能電話機器人比較
鎮江智能外呼系統多少錢
寧波人工外呼系統平臺
百度地圖的標注的圖標
貴港電子地圖標注店
浙江正規電銷機器人供應商
銅川移動外呼系統
免費微信地圖標注
代辦百度地圖標注
鄂州ai電話機器人哪家便宜
辦理銀行卡電話卡月反400
斑馬電話機器人營銷
電銷機器人 電話卡
杭州防封電銷卡代理政策
百度地圖標注縣的區域
銷售系統外呼時間
地圖標注小程序
電銷機器人貼牌搭建
唐山外呼系統專賣
地圖標注問題描述
綿陽人工外呼系統
ai電銷機器人是怎么合作的
江蘇
開車地圖標注軟件
漳州人工外呼系統好用嗎
呼多多機器人電銷
溫州智能語音電銷機器人廠家
誠信經營外呼系統
接聽電話機器人自動回復別人
常州電銷機器人好用嗎
岳陽電銷外呼系統軟件有哪些
電銷外呼數據管理系統
佛山導航地圖標注
壽光地圖標注商戶
貴陽手機自動外呼系統好用嗎
睿聲的外呼系統
400電話怎么辦理
云企呼電銷機器人
南寧地圖標注
徐州手機外呼系統開發
gom小地圖標注
山西百應電話機器人
沈陽外呼防封系統是什么
ps地圖標注位置
北京電商智能外呼系統聯系方式
電銷機器人兼職
通力外呼線路
江門ai電話機器人
福建外呼系統公司
外呼系統定位
高德地圖標注店鋪地址
廣州電子地圖標注
內蒙古高頻外呼系統多少錢一個月
阿里云400電話申請
微店店鋪地圖標注
怎樣在地圖標注銷售區域
外呼系統怎么接入線路
無錫防封電銷卡辦理靠譜
山谷地圖標注
貴州外呼系統公司
重慶營銷電銷機器人費用
安徽高頻外呼系統怎么安裝
成都專業外呼系統
聯通公司可以辦理400電話
詐騙外呼系統責任
400電話代理商辦理注意
長江三角洲地圖標注
外呼系統怎么計算時間的
百應電銷機器人靠譜嗎
惠州便宜外呼系統軟件
銀川營銷外呼系統代理
新野400電話辦理網點
百應外呼系統會扣對方話費嗎
汶上外呼營銷系統
怎么能擁有電話機器人
贛州哪里有移動大數據外呼系統
漢川電銷機器人
怎么修改高德地圖標注店鋪
佛山呼叫中心外呼系統如何
外呼系統考核
鄲城縣地圖標注
吳江電銷機器人
偃師電銷機器人
企業400電話辦理哪個品牌好
電話機器人的電話列表
南寧網絡外呼系統線路
河南洛陽機器人電銷代理商
淮安辦理400電話
福建正規移動大數據外呼系統
安徽
百度地圖標注太多加載太慢
怎么舉報電銷機器人
百度地圖標注需要錢么
舒城地圖標注
高德導航地圖標注申請
浙江電商智能外呼系統商家
高德地圖標注兼職入駐
湖南外呼管理系統
國際地圖標注位置
70 度ai智能電銷機器人
長春智能外呼系統收費
徐州外呼系統參考價格
企業培訓電銷機器人
運營商精準大數據外呼系統
昆明電銷外呼系統平臺
下級生制服店的地圖標注
重慶400電話辦理首選易號網
商戶地圖標注大全
JSP模板應用指南(下)
上一篇:
JSP模板應用指南(上)
下一篇:
JSP簡明教程:令人興奮的腳本編程
一起分享吧
產品關鍵詞: JSP模板應用指南(下) JSP,模板,應用,指南,下,JSP,
2020久久精品亚洲|久久窝窝国产精品午夜看片|亚洲 日韩 激情 无码 中出|国产精品乱码高清在线