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

JSP
java/jsp中 中文问题详解
Java代码编写的一般性指导
如何成为一个优秀的jsp程序员
JSP开发入门(二)----JSP语法的基本原理
JSP开发入门(三)--JSP与JavaBean
JSP开发入门(四)--JSP的内部对象
JSP开发入门(五)--JSP其他相关资源
JSP开发入门(一)--安装好你的机器来使用JSP
页面自动刷新,不用按回车键来提交数据!
用连接池提高Servlet访问数据库的效率(2)
JDBCTM 指南:入门7-CallableStatement
JDBCTM 指南:入门3 - DriverManager
JDBCTM 指南:入门6-PreparedStatement
JDBCTM 指南:入门5 - ResultSet
JDBCTM 指南:入门4 - Statement
JDBCTM 指南:入门
JDBCTM 指南:入门2 - 连接
用连接池提高Servlet访问数据库的效率(1)
使用JavaBean创建您的网上日历本(1)
使用JavaBean创建您的网上日历本(2)

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-03   浏览: 107 ::
收藏到网摘: 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页面