易截截图软件、单文件、免安装、纯绿色、仅160KB

JSP自定义标签学习(高级)

JSP自定义标签学习(高级)
关键字: 自定义标签
BodyTag接口
    接口BodyTag的实现类,它是负责操作主体内容(bodyContent).
定义方法:public void doInitBody();
    public int doAtferBody();
提示,那些在doStartTag()方法之后被调用的方法依赖于doStartTag()方法返回值并且看在JSP页面上是否自定义Action元素,而不是怎样在TLD文件中去申明
    在TLD文件中, 若<body-content>empty</body-content>的话,doStartTag()方法只能返回SKIP_BODY
    body-content有三个可选值:empty , JSP , tagdependent
    若没有设置的话,那么doStartTag()可以返回SKIP_BODY, EVAL_BODY_INCLUDE, or EVAL_BODY_BUFFERED.
返回值的说明:
    若SKIP_BODY返回的情况下,body不会被evaluated并且doEndTag()被调用;
    若EVAL_BODY_INCLUDE 返回,并且自定义action元素不为空的时候,那么doInitBody(),setBodyContent()不会被调用,而body evaluated并且"通过"当前的out对象,还有当action元素为空的时候,只有doStartTag(),doEndTag();
   
    当EVAL_BODY_BUFFERED 返回,并且自定义的action元素不为空的时候,setBodyContent(),doInitBody()被调用,body被evaluated,doAfterBody()被调用,直到大于0次迭代后,doEndTag()才被调用,还有当action元素为空的时候,只有doStartTag(),doEndTag();
主题内容
   1.自定义标记通常需要操控自己的主体内容,例如数据库查询需要将其主题内容解释为SQL
       
    2.工作方法
    servlet容器包含BodyContent对象栈,servlet容器在doStartTag()方法之后调用PageContext.pushBody(),就是说把当前的主体内容推入栈中,其中out变量重定向到当前的主体内容实例主题内容,保留一个到JspWriter对象的引用,即前一个输出,JspWriter将数据写入响应流中.这样就有效地创建了写入器栈
    servlet容器是在调用标记的doAfterBody和doEndTag方法之间调用PageContent.popBody()方法的
注意请不要在doEndTag()后面去访问BodyContent,因为servlet容器在调用标记处理程序的doEndTag()方法为止,servlet容器可能已经再次使用了该标记的主题内容,使用doEndTag方法访问自己主体内容的标记,可能


相关文档:

jsp内置对象[9种]


JSP共有以下9种基本内置组件(可与ASP的6种内部组件相对应):
  request
用户端请求,此请求会包含来自GET/POST请求的参数
  response
网页传回用户端的回应
  pageContext
网页的属性是在这里管理
  session
与请求有关的会话期
  application
servlet正在执行的内容
  out
用来传送回应 ......

JSP诡异错误

   本地用的是tomcat6,运行一切都正常。把系统部到远程上时候报这个错误:    Syntax error on token "<", invalid AssignmentOperator
Syntax error on token "<", invalid AssignmentOperator
在网上找到原因:
这个错误可能是因为你在jsp中用到了泛型。
把泛型去掉试试就 ......

Tomcat JSP Web 开发中的乱码问题小结


1. 静态页面的乱码问题
文件的编码和浏览器要显示的编码不一致。
1) 检查文件原始的编码, 可以用记事本打开, 然后选择另存为来看;
2) 给当前页面加入一个指令来建议浏览器用指定的编码来显示文件字符内容.
<meta http-equiv="content-type" content="text/html; charset=GBK">
3) 如果系统是英文XP,没装东亚字 ......

java jsp servlet中的绝对路径与相对路径(转载)

 
1.基本概念的理解
绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例如:
C:xyz est.txt 代表了test.txt文件的绝对路径。http://www.sun.com/index.htm也代表了一个URL绝对路径。
相对路径:相对与某个基准目录的路径。包含Web的相对路径(HTML中的相对目录),例如:在
Ser ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号