隨筆-9  評論-2  文章-0  trackbacks-0
          BodyTagSupport類的方法:
          編寫標簽對應的實現類時,需要重載BodyTagSupport類幾個方法:doStartTag(), setBodyContent(), doInitBody(), doAfterBody(), doEndTag();

          他們執行順序如下:
          doStartTag()→doInitBody()→setBodyContent()→doAfterBody()→doEndTag()

          doStartTag()方法可返回EVAL_BODY_INCLUDE或SKIP_BODY,
          如果返回EVAL_BODY_INCLUDE則繼續執行;
          如果返回SKIP_BODY則接下來的doInitBody(),setBodyContent(), doAfterBody()三個方法不會被執行,
          而直接執行doEndTag()方法。

          setBodyContent()方法用于設置標簽體內容,如果在此之前要作一些初始化工作,則在doInitBody()方法中完成。
          標簽體內容執行完后,會調用doAfterBody()方法,此方法可返回EVAL_BODY_TAG, SKIP_BODY,
          EVAL_PAGE或SKIP_PAGE。
          如果返回EVAL_BODY_TAG則會再次設置標簽體內容,直到返回SKIP_BODY;
          如果返回EVAL_PAGE則標簽體執行完后會繼續執行JSP頁面中接下來的部分;
          如果返回SKIP_PAGE,則JSP頁面的后續內容將不再執行。

          標簽中靜態常量:

          EVAL_BODY_INCLUDE:告訴服務器正文的內容,并把這些內容送入輸出流
          SKIP_BODY:告訴服務器不要處理正文內容
          EVAL_PAGE:讓服務器繼續執行頁面
          SKIP_PAGE:讓服務器不要處理剩余的頁面
          EVAL_BODY_AGAIN:讓服務器繼續處理正文內容,只有doAfterBody方法可以返回
          EVAL_BODY_BUFFERED:BodyTag接口的字段,在doStartTag()返回
          EVAL_BODY_INCLUDE、SKIP_BODY一般由doStartTag()返回,而EVAL_PAPGE、SKIP_PAGE由doEndTag()返回。
          posted on 2011-06-14 12:16 secret_x15 閱讀(612) 評論(0)  編輯  收藏 所屬分類: java
          主站蜘蛛池模板: 六枝特区| 房产| 泸西县| 巴马| 旌德县| 凤凰县| 嘉峪关市| 永清县| 岳普湖县| 来安县| 亳州市| 宁波市| 潞城市| 吕梁市| 平果县| 临颍县| 吉水县| 东宁县| 都安| 铅山县| 宁强县| 卓资县| 阿坝县| 垦利县| 潞西市| 马公市| 松溪县| 清流县| 措勤县| 哈巴河县| 搜索| 虹口区| 敦化市| 龙口市| 卢湾区| 安庆市| 黔东| 龙陵县| 临清市| 永定县| 合作市|