-
JSP自定義標簽——SimpleSupport案例4 II 【溫馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等編程愛好者關注我,加我慕課好友,互相學習,共同進步!】查看全部
-
JSP自定義標簽——SimpleSupport案例4 I 【溫馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等編程愛好者關注我,加我慕課好友,互相學習,共同進步!】查看全部
-
JSP自定義標簽——SimpleSupport案例3 III 案例三的核心代碼: throw new SkipPageException(); SimpleTagSupport根據這個異常來決定是否往下繼續執行余下的代碼。 Ps:小技巧:右鍵.java類文件——Copy Qualified Name:/Test1/src/t1/t1_01.java;右鍵.java文件旗下的C圖標——Copy Qualified Name:t1.t1_01。 【溫馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等編程愛好者關注我,加我慕課好友,互相學習,共同進步!】查看全部
-
JSP自定義標簽——SimpleSupport案例3 II 【溫馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等編程愛好者關注我,加我慕課好友,互相學習,共同進步!】查看全部
-
JSP自定義標簽——SimpleSupport案例3 I 【溫馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等編程愛好者關注我,加我慕課好友,互相學習,共同進步!】查看全部
-
JSP自定義標簽——SimpleSupport案例2 III 案例二的核心代碼: getJspBody().invoke(null); JspFragment調用invoke方法,讓其顯示標簽體。默認的傳入null就是顯示標簽體的內容。 【溫馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等編程愛好者關注我,加我慕課好友,互相學習,共同進步!】查看全部
-
JSP自定義標簽——SimpleSupport案例2 II 【溫馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等編程愛好者關注我,加我慕課好友,互相學習,共同進步!】查看全部
-
JSP自定義標簽——SimpleSupport案例2 I 【溫馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等編程愛好者關注我,加我慕課好友,互相學習,共同進步!】查看全部
-
JSP自定義標簽——SimpleSupport案例1 III 案例一的核心代碼: JspWriter jspWriter=getJspContext().getOut(); jspWriter.write(dateStr); 【溫馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等編程愛好者關注我,加我慕課好友,互相學習,共同進步!】查看全部
-
JSP自定義標簽——SimpleSupport案例1 II 【溫馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等編程愛好者關注我,加我慕課好友,互相學習,共同進步!】查看全部
-
JSP自定義標簽——SimpleSupport案例1 I 【溫馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等編程愛好者關注我,加我慕課好友,互相學習,共同進步!】查看全部
-
JSP自定義標簽——SimpleTag接口詳解 一、什么是標簽處理器?就是標簽處理類——java文件。 二、SimpleTag接口提供方法:在源碼中可以看到SimpleTag接口有5個方法, 1、doTag()方法是核心方法,我們可以將所有的標簽處理邏輯都寫在這個方法中,這個方法會拋出一個JspException,然后我們可以通過這個異常通知WEB容器,不再執行此標簽后面的內容。 2、setParent(JspTag),這個方法呢,由WEB容器所調用的,是將父標簽處理器對象傳遞給標簽處理器。 3、getParent()是獲取當前標簽的父標簽對象,比如在標簽嵌套時,可以用此方法得到當前標簽的父標簽。 4、setJSPContext(JspContext)這個方法也是由容器調用的,這個方法是將JSP頁面中的pageContext對象傳遞給標簽處理器對象。 5、setJspBody(JspFragment)這個方法也由web容器調用,意思是將代表當前標簽體的JspFragment對象傳遞給標簽處理器對象,這里的參數可以理解為標簽體的內容。 注意:JSP引擎在處理簡單標簽的標簽時,會將標簽體中的內容封裝到JspFragment這個參數中,并調用setJspBody(JspFragment)將該對象傳遞給標簽處理器,我們就可以根據需求來控制是否輸出標簽體或者循環標簽體。 三、來看下JspFragment的源碼:它是一個抽象類,有一個invoke(Writer)這個方法。這個方法用于執行JspFragment對象所代表的代碼段,也就是說,我們要在標簽體中輸出一段話,我們可以用invoke(Writer)這個方法中的參數是一個輸出流,使用這個方法就可以將我們想要輸出的數據輸出到JSP頁面中,getJspContext()這個方法用于返回代表JSP頁面的JspContext對象。getJspBody()返回代表標簽體的JspFragment對象。也就是標簽體的內容。 【溫馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等編程愛好者關注我,加我慕課好友,互相學習,共同進步!】查看全部
-
JSP自定義標簽——BodyTag接口和BodyTagSupport類 III 【溫馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等編程愛好者關注我,加我慕課好友,互相學習,共同進步!】查看全部
-
JSP自定義標簽——BodyTag接口和BodyTagSupport類 II 附加:JSP引擎是什么?是什么工作原理? 1、JSP引擎: 執行JSP代碼需要在服務器上安裝JSP引擎,比較常見的引擎有WebLogic和Tomcat。把這些支持JSP的web服務器配置好后。就可以再客戶端通過瀏覽器來訪問JSP頁面了。 2、JSP引擎的工作原理: 當一個JSP頁面第一次被訪問的時候,JSP引擎將執行以下步驟: (1)將JSP頁面翻譯成一個Servlet,這個Servlet是一個java文件,同時也是一個完整的java程序 (2)JSP引擎調用java編譯器對這個Servlet進行編譯,得到可執行文件class (3)JSP引擎調用java虛擬機來解釋執行class文件,生成向客戶端發送的應答,然后發送給客戶端 以上三個步驟僅僅在JSP頁面第一次被訪問時才會執行,以后的訪問速度會因為class文件已經生成而大大提高。 Ps:當JSP引擎街道一個客戶端的訪問請求時,首先判斷請求的JSP頁面是否比對應的Servlet新,如果新,對應的JSP需要重新編譯。 【溫馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等編程愛好者關注我,加我慕課好友,互相學習,共同進步!】查看全部
-
JSP自定義標簽——BodyTag接口和BodyTagSupport類 I Ps:簡介BodyTag接口:BodyTag接口可以將標簽體中的內容修改后再輸出,BodyTag接口除了繼承自IterationTag接口的內容之外呢,它還增加了兩個方法和兩個常量,分別是:setBodyContent(BodyContent b) doInitBody(),一個常量EVAL_BODY_BUFFERED,而EVAL_BODY_TAG是一個已經過時的常量,這里不再討論它。前面使用的doStartTag方法,除了返回EVAL_BODY_INCLUDE和SKIP_BODY之外呢,它還會返回EVAL_BODY_BUFFERED。當返回EVAL_BODY_BUFFERED時,JSP引擎會創建一個bodyContent對象,然后依次調用。setBodyContent(BodyContent b) doInitBody() 接著執行標簽體中的內容,并且將標簽體中的內容通過setBodyContent(BodyContent b)方法中的BodyContent參數,傳遞過來,也就是BodyContent封裝了標簽體中的內容,這樣就可以控制標簽體內容的輸出了,那doInitBody()會在setBodyContent(BodyContent b)之后被調用。我們再來看一下BodyContent,BodyContent繼承了JspWriter,根據名字,知道它是個輸出流,不同的是,它提供了一個緩沖區來存放數據,它也為我們提供了一些比較方便的方法供我們使用,比如這節課例子中所要使用到的getString()還有getEnclosingWriter();getString()用于返回BodyContent中的一個string,也就是它會返回緩沖區中緩存的數據,而這個getEnclosingWriter()這個方法可以得到一個BodyContent所關聯的JspWriter對象。 Ps:最后return EVAL_PAGE;//EVAL_PAGE是告訴WEB容器接著執行自定義標簽后面的代碼。 【溫馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等編程愛好者關注我,加我慕課好友,互相學習,共同進步!】查看全部
舉報
0/150
提交
取消