简单实用jstl实现代码编写

package com.ceshi;

import java.io.IOException;

import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.*;

public class TestTag extends SimpleTagSupport {
    private String outerTagName="p";
    public String getOuterTagName() {
        return outerTagName;
    }
    public void setOuterTagName(String outerTagName) {

        this.outerTagName = outerTagName;
    }
    private int count;

    public int getCount() {
        return count;
    }
    public void setCount(int count) {
        this.count = count;
    }
    @Override
    public void doTag() throws JspException, IOException {
        JspFragment jsp=this.getJspBody();
        this.getJspContext().getOut().write("<"+outerTagName+">");
        for(int i=0; i<count;i++){
            jsp.invoke(null);
        }
        this.getJspContext().getOut().write("</"+outerTagName+">");

    }
}
<?xml version="1.0" encoding="UTF-8"?>
<taglib xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd"
    version="2.1">

  <description>JSTL 1.1 core library</description>
  <display-name>JSTL core</display-name>
  <tlib-version>1.1</tlib-version>
  <short-name>m</short-name>
  <uri>http://www.baidu.com/myjstl</uri>

   <tag>
    <description>

    </description>
    <name>show</name>
    <tag-class>com.ceshi.TestTag</tag-class>
    <body-content>scriptless</body-content>
    <attribute>
        <description>
Name of the exported scoped variable for the
exception thrown from a nested action. The type of the
scoped variable is the type of the exception thrown.
        </description>
        <name>outerTagName</name>
        <required>false</required>
        <rtexprvalue>false</rtexprvalue>
    </attribute>
     <attribute>
        <description>
Name of the exported scoped variable for the
exception thrown from a nested action. The type of the
scoped variable is the type of the exception thrown.
        </description>
        <name>count</name>
        <required>true</required>
        <rtexprvalue>false</rtexprvalue>
    </attribute>
  </tag>
  <tag>

  </tag>
</taglib>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<%@taglib prefix="m" uri="http://www.baidu.com/myjstl" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<m:show outerTagName="h4" count="2">
hahahha<br>
</m:show>
</body>
</html>

实现效果如下:

时间: 2024-10-12 18:12:28

简单实用jstl实现代码编写的相关文章

简单实用的HTML代码

简单实用的HTML代码 一.HTML各种命令的代码: 1.文本标签(命令) <pre></pre> 创建预格式化文本 <h1></h1> 创建最大的标题 <h6></h6> 创建最小的标题 <b></b> 创建黑体字 <i></i> 创建斜体字 <tt></tt> 创建打字机风格的字体 <cite></cite> 创建一个引用,通常是斜体

简单实用jstl实现“登录|注册”

package com.ceshi; import java.io.IOException; import javax.servlet.jsp.JspException; import javax.servlet.jsp.PageContext; import javax.servlet.jsp.tagext.SimpleTagSupport; public class UserStatus extends SimpleTagSupport { private String sessionKey

ul、li列表简单实用代码实例

ul.li列表简单实用代码实例: 利用ul和li可以实现列表效果,下面就是一个简单的演示. 代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.51texiao.cn/" /> <title>蚂蚁部落</title> &

Java简单实用代码分享,这里一定有你想要的!

Java简单实用代码分享,这里一定有你想要的! 今天开始给大家分享一些简单实用的代码,之前的小项目文章因为篇幅有限,没办法一篇文章说清楚,便想着分享一些小代码.都是完整有效的,可直接取用. 电脑密码制作 #include <stdio.h> void InputPass(char pw[])//获取用户输入的密码 { char ch;//用户输入的密码字符 char* pold = pw;//保存密码数组的首地址,用于循环内的比较 while((ch=getch())!='\r')//ASCI

关于git的简单实用

这里主要介绍的是 "开源中国"的使用  ;其实就相当于github的中国版.只不过服务器在中国 ,所以速度上稍微快一些. 好 废话不多说直接上代码 ! 整个过程都是在Mac终端中完成: 首先 .要创建一个文件夹用来装我们的项目  在创建项目之前我们先来熟悉一下终端的帮助功能 , 在终端中 如果想调出git 的帮助直接可以输入 git help指令 这样就可以调出关于git的所有帮助 如果 知道详细的某个关键字怎么使用也很简单 直接输入git help checkout *退出输入wq

9个实用的Javascript代码高亮脚本

代码高亮很有用,特别是在需要在网站或者blog中显示自己编写的代码的时候,或者给其他人查看或调试语法错误的时候.我们可以将代码高亮,以便阅读者可以十分方便的读取代码块,增加用户阅读代码的良好体验. 目前,有很多免费而且有用的代码高亮脚本.这些脚本大多是由Javascript语言编写,也有些使用其它语言(比如java.Phyton或Ruby)等写的. 下面来推荐最受欢迎.最实用的9个Javascript代码高亮脚本. 1. SyntaxHighlighter 我相信这是最普遍代码高亮代码.它支持多

Android基础入门教程——2.4.2 ListView简单实用

Android基础入门教程--2.4.2 ListView简单实用 标签(空格分隔): Android基础入门教程 本节引言: 一口气把Android入门网络编程的章节写完了,本节我们来继续学习没有讲完的UI控件部分, 回顾上一节,我们介绍了Adapter适配器的概念,然后学习了三个最简单的适配器的使用: ArrayAdapter,SimpleAdapter和SimpleCursorAdapter,而本节给大家讲解的是第一个 需搭配Adapter使用的UI控件:ListView,不过在版本中被R

熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。

熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器.过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验. 1.说一说Servlet生命周期(非常重要) Servlet生命周期包括三部分: 初始化:Web容器加载servlet,调用init()方法 只执行一次 处理请求:当请求到达时,运行其service()方法.service()自动调用与请求相对应的doXXX

简单实用的PHP防注入类实例

这篇文章主要介绍了简单实用的PHP防注入类实例,以两个简单的防注入类为例介绍了PHP防注入的原理与技巧,对网站安全建设来说非常具有实用价值,需要的朋友可以参考下 本文实例讲述了简单实用的PHP防注入类.分享给大家供大家参考.具体如下: PHP防注入注意要过滤的信息基本是get,post,然后对于sql就是我们常用的查询,插入等等sql命令了,下面我给各位整理两个简单的例子,希望这些例子能给你网站带来安全. PHP防注入类代码如下: 复制代码 代码如下: <?php /**  * 参数处理类  *