当前位置: 首页 > 图文教程 > 网络编程 > JSP > Taglib原理和实现 第六章:标签内常用方法总结

JSP
GET 方式提交的含有特殊字符的参数
java big5到gb2312的编码转换
java Lucene 中自定义排序的实现
hibernate中的增删改查实现代码
jsp 定制标签(Custom Tag)
jsp基础速成精华讲解
IE cache缓存 所带来的问题收藏
关于JSP的一点疑问小结
JSP 多条SQL语句同时执行的方法
jsp include文件时的一个乱码解决方法
在JSTL EL中处理java.util.Map,及嵌套List的情况
jsp 页面显示的一些用法
根据Hibernte的cfg文件生成sql文件
五种 JSP页面跳转方法详解
JSP 防范SQL注入攻击分析
JSP 连接MySQL配置与使用
java eclipse 启动参数
jsp 页面上图片分行输出小技巧
解决jsp开发中不支持EL问题
JSP 页面中使用FCKeditor控件(js用法)

JSP 中的 Taglib原理和实现 第六章:标签内常用方法总结


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-03   浏览: 90 ::
收藏到网摘: n/a

1。支持el表达式:
import org.apache.taglibs.standard.lang.support.ExpressionEvaluatorManager;
private Object value = null;
this.value = ExpressionEvaluatorManager.evaluate("value", value.toString(), Object.class, this, pageContext); 

2.用BeanUtil取属性值
import org.apache.commons.beanutils.PropertyUtils;
private String property=null;
Object propertyValue = PropertyUtils.getProperty(value, property);

3.设置request里的值
pageContext.setAttribute("var",propertyValue);

4。打印
pageContext.getOut().print(outputString);

5。取得父标签,取得想要的标签,即使它非父
getParent()
findAncestorWithClass(this,ancestorTag.class);

6。标签自带方法和常量,方法按照容器的调用顺序排列。示例  
 <c:if test="...">
  <c:out value="..."/>
 </c:if>
doStartTag : 容器解析到c:if左尖括号(“<”)时调用
doInitBody : 容器解析到c:if右尖括号(“>”)和c:out左尖括号(“<”)时调用
doAfterBody : 容器解析到c:out结束标记(“/>”)时调用
doEndTag :容器解析到c:if结束标记(“/>”)时调用

EVAL_BODY_SKIP : 通常在 doStartTag 方法里调用,忽略标签包括的内容,假如返回这个值,上面的c:if忽略c:out
EVAL_BODY_INCLUDE :通常在 doAfterBody 方法里调用,再次执行body,假如返回这个值,上面的c:out被执行多次
EVAL_PAGE :可在任何方法里调用。返回jsp页面