当前位置: 首页 > news >正文

网站搭建报价利用帝国cms网站建设

网站搭建报价,利用帝国cms网站建设,小内存 wordpress 优化,网站制图软件声明#xff1a;本文只是自学过程中#xff0c;记录自己不会的知识点的摘要#xff0c;如果想详细学习JavaWeb#xff0c;请到孤傲苍狼博客学习#xff0c;JavaWeb学习点此跳转 本文链接#xff1a;https://www.cnblogs.com/xdp-gacl/p/3916946.html https://www.cnblogs…声明本文只是自学过程中记录自己不会的知识点的摘要如果想详细学习JavaWeb请到孤傲苍狼博客学习JavaWeb学习点此跳转 本文链接https://www.cnblogs.com/xdp-gacl/p/3916946.html         https://www.cnblogs.com/xdp-gacl/p/3916968.html         https://www.cnblogs.com/xdp-gacl/p/3917714.html 传统标签接口中的各个方法可以返回的返回值说明   下图列举了Tag接口、IterationTag接口和BodyTag接口中的主要方法及它们分别可以返回的返回值的说明。    在JSP API中也提供了IterationTag接口的默认实现类TagSupport、IterationTag接口的默认实现类TagSupport和BodyTag接口的实现类BodyTagSupport我们在编写自定义标签的标签处理器类时可以继承和扩展TagSupport类、IterationSupport类和BodyTagSupport类。 开发简单标签实现页面逻辑   1.控制jsp页面某一部分内容是否执行     编写一个类继承SimpleTagSupport然后再重写doTag方法在doTag方法里面是否调用jspFrament.invoke方法来控制标签是否执行。 package me.gacl.web.simpletag;import java.io.IOException;import javax.servlet.jsp.JspException; import javax.servlet.jsp.PageContext; import javax.servlet.jsp.tagext.JspFragment; import javax.servlet.jsp.tagext.SimpleTagSupport;/*** author gacl* SimpleTagSupport类实现了SimpleTag接口* SampleTagDemo1类继承SimpleTagSupport*/ public class SimpleTagDemo1 extends SimpleTagSupport {/* 简单标签使用这个方法就可以完成所有的业务逻辑* see javax.servlet.jsp.tagext.SimpleTagSupport#doTag()* 重写doTag方法控制标签体是否执行*/Overridepublic void doTag() throws JspException, IOException {//得到代表jsp标签体的JspFragmentJspFragment jspFragment this.getJspBody();//得到jsp页面的的PageContext对象//PageContext pageContext (PageContext) jspFragment.getJspContext();//调用JspWriter将标签体的内容输出到浏览器//jspFragment.invoke(pageContext.getOut());//将标签体的内容输出到浏览器jspFragment.invoke(null);} }   2.控制jsp页面内容重复执行     编写一个类继承SimpleTagSupport然后再重写doTag方法在doTag方法里面重复调用jspFrament.invoke方法即可。 package me.gacl.web.simpletag;import java.io.IOException;import javax.servlet.jsp.JspException; import javax.servlet.jsp.tagext.JspFragment; import javax.servlet.jsp.tagext.SimpleTagSupport;/*** author gacl* SimpleTagSupport类实现了SimpleTag接口* SampleTagDemo2类继承SimpleTagSupport*/ public class SimpleTagDemo2 extends SimpleTagSupport {/* 简单标签使用这个方法就可以完成所有的业务逻辑* see javax.servlet.jsp.tagext.SimpleTagSupport#doTag()* 重写doTag方法控制标签执行5次*/Overridepublic void doTag() throws JspException, IOException {// 得到代表jsp标签体的JspFragmentJspFragment jspFragment this.getJspBody();for (int i 0; i 5; i) {// 将标签体的内容输出到浏览器jspFragment.invoke(null);}} }   3.修改jsp页面内容输出     编写一个类继承SimpleTagSupport然后再重写doTag方法在doTag方法调用jspFrament.invoke方法时让执行结果写一个自定义的缓冲中即可然后开发人员可以取出缓冲的数据修改输出。 package me.gacl.web.simpletag;import java.io.IOException; import java.io.StringWriter;import javax.servlet.jsp.JspException; import javax.servlet.jsp.PageContext; import javax.servlet.jsp.tagext.JspFragment; import javax.servlet.jsp.tagext.SimpleTagSupport;/*** author gacl* SimpleTagSupport类实现了SimpleTag接口* SampleTagDemo3类继承SimpleTagSupport*/ public class SimpleTagDemo3 extends SimpleTagSupport {/* 简单标签使用这个方法就可以完成所有的业务逻辑* see javax.servlet.jsp.tagext.SimpleTagSupport#doTag()* 重写doTag方法修改标签体里面的内容将标签体的内容转换成大写*/Overridepublic void doTag() throws JspException, IOException {// 得到代表jsp标签体的JspFragmentJspFragment jspFragment this.getJspBody();StringWriter sw new StringWriter();//将标签体的内容写入到sw流中jspFragment.invoke(sw);//获取sw流缓冲区的内容String content sw.getBuffer().toString();content content.toUpperCase();PageContext pageContext (PageContext) this.getJspContext();//将修改后的content输出到浏览器中pageContext.getOut().write(content);} }   4.控制整个jsp页面是否执行     编写一个类继承SimpleTagSupport然后再重写doTag方法在doTag方法抛出SkipPageException异常即可jsp收到这个异常将忽略标签余下jsp页面的执行。 示例代码如下 package me.gacl.web.simpletag;import java.io.IOException; import javax.servlet.jsp.JspException; import javax.servlet.jsp.SkipPageException; import javax.servlet.jsp.tagext.SimpleTagSupport;/*** author gacl* SimpleTagSupport类实现了SimpleTag接口* SampleTagDemo4类继承SimpleTagSupport*/ public class SimpleTagDemo4 extends SimpleTagSupport {/* 简单标签使用这个方法就可以完成所有的业务逻辑* see javax.servlet.jsp.tagext.SimpleTagSupport#doTag()* 重写doTag方法控制标签余下的Jsp不执行*/Overridepublic void doTag() throws JspException, IOException {//抛出一个SkipPageException异常就可以控制标签余下的Jsp不执行throw new SkipPageException();} } tld文件中标签体类型设置细节 tag!-- 标签名 --namedemo2/name!-- 标签处理器类--tag-classme.gacl.web.simpletag.SimpleTagDemo2/tag-class!-- 标签体允许的内容 scriptless表示标签体的内容不允许是java脚本代码--body-contentscriptless/body-content /tag   开发好一个标签后在tld文件中使用tag来描述一个标签描述的内容包括标签名(name)标签处理器类(tag-class)标签体的内容(body-content)。   tld文件中有四种标签体(body-content)类型 empty、scriptless、JSP、tagdependent    empty表示该标签没有标签体   scriptless:表示该标签是有标签体的但是标签体的内容不能是java代码   JSP表示该标签是有标签体的并且标签体的内容可以是任意的包括java代码   tagdependent表示标签体里面的内容是给标签处理器类使用的tagdependent用得比较少了解一下即可 简单标签标签体的细节注意问题    在简单标签(SampleTag)中标签体body-content的值只允许是empty、scriptless、tagdependent不允许设置成JSP,如果设置成JSP就会出现异常 The TLD for the class me.gacl.web.simpletag.SimpleTagDemo1 specifies an invalid body-content (JSP) for a SimpleTag tld文件中用于描述标签属性的attribute元素说明   tag元素的attribute子元素用于描述自定义标签的一个属性自定义标签所具有的每个属性都要对应一个attribute元素 java类  package me.gacl.web.tag;import java.io.IOException;import javax.servlet.jsp.JspException; import javax.servlet.jsp.tagext.JspFragment; import javax.servlet.jsp.tagext.SimpleTagSupport;public class SimpleTagDemo2 extends SimpleTagSupport{private int count;public void setCount(int count){this.count count;}Overridepublic void doTag() throws JspException, IOException {JspFragment jspFragment this.getJspBody();for (int i 1; i count; i){jspFragment.invoke(null);}} } tld代码 tag!-- 标签名 --namedemo5/name!-- 标签处理器类--tag-classme.gacl.web.simpletag.SimpleTagDemo5/tag-class!-- 标签体允许的内容--body-contentscriptless/body-content!-- 标签的属性描述 --attributedescription描述标签的count属性/description!-- 标签的count属性 --namecount/namerequiredtrue/required!-- rtexprvalue用来指示标签的属性值是否可以是一个表达式一般设置为true,true就表示允许标签的属性值可以是一个表达式--rtexprvaluetrue/rtexprvalue/attribute /tag   attribute元素的子元素说明     转载于:https://www.cnblogs.com/dulianyong/p/10271552.html
http://www.zqtcl.cn/news/289903/

相关文章:

  • 最有设计感的网站扬中网站建设 优帮云
  • 企业建设银行网站登录不了wordpress需要ftp
  • 广州营销型网站建设团队专业建设内涵包括哪些内容
  • 网站如何做响应式布局外国网站上做Task
  • 知乎网站建设入门书大渡口集团网站建设
  • 免费网站建设是什么宁波网站建设的价格表
  • 网站设计导航栏高度网站设计的经营范围
  • 帮别人建设网站多少利润北京网站建设公司华网制作作
  • 微信网站需要备案吗瑞安商业网站建设
  • 做网站如何计算工资wordpress stheme
  • 网站建设销售人才简历wordpress 搜索tag
  • 设计网站专业云南旅行社网站开发
  • 小规模开普票网站建设几个点张浦专业做网站
  • 点击图片跳转到网站怎么做链接网址后缀名大全
  • php网站开发优化crm客户系统
  • 韩国网站免费模板wordpress数据库名称
  • 如何修改网站发布时间贵阳网站建设报价
  • 东莞网站推广培训免费云电脑
  • 湖北网站建设详细方案脑叶公司手机版下载
  • 淄博网站制作平台形象怎样建设旅游网站
  • 广州花都网站建设网站改版协议
  • 中国建设协会网站首页工信部网站备案被删除
  • 丹阳网站建设案例dedecms 购物网站
  • 网站上怎么做动画广告视频下载seo黑帽是什么意思
  • 服装网站建设网综合社区网站开发费用
  • 做网站预付款 怎么做账做律师网站的网络公司
  • 购物网站开发模板小程序注册拉新
  • 怎么建立一个网站能够与讯飞云对话罗湖附近公司做网站建设哪家好
  • 唐山网站制作公司北京网站开发优选ls20227
  • php 网站备份代码广州网站设计公司招聘