文档章节

自定义标签属性的使用

肥猫钓鱼
 肥猫钓鱼
发布于 2014/11/18 14:46
字数 376
阅读 15
收藏 0
点赞 0
评论 0

自定义标签的属性的使用demo 1.写一个简单的自定义标签类,里面有一个permission变量,即作为自定义标签的属性 package test.tag;

import java.io.IOException;

import javax.servlet.jsp.JspException; import javax.servlet.jsp.JspWriter; import javax.servlet.jsp.tagext.TagSupport;

public class MyTag extends TagSupport{

/**
 * 
 */
private static final long serialVersionUID = 1L;
private String permission;

@Override
public int doStartTag() throws JspException {
	JspWriter writer = pageContext.getOut();
	if(this.permission!=null&&!this.permission.equals("")){
		if(this.permission.equals("admin.view")){
			return EVAL_BODY_INCLUDE;
		}else{
			try {
				writer.println("没有该权限");
			} catch (IOException e) {
				e.printStackTrace();
			}
			return SKIP_BODY;
		}
	}else{
		try {
			writer.println("没有该权限");
		} catch (IOException e) {
			e.printStackTrace();
		}
		return SKIP_BODY;
	}
}

public String getPermission() {
	return permission;
}

public void setPermission(String permission) {
	this.permission = permission;
}

} 2.配置tld文件

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
 "web-jsptaglibrary_1_2.dtd" >  
<taglib>  
  <tlibversion>tlibversion</tlibversion>  <!-- 你自定义标签的版本数 -->  
  <jsp-version>1.2</jsp-version>  <!-- 指定你的JSP版本,扩张标签是在JSP1.2之后兼容的 -->  
  <shortname>shortname</shortname> <!-- 标签的简写 -->  
  <tag>  
    <name>tags</name>  <!-- 标签名字 -->  
    <tagclass>test.tag.MyTag</tagclass>  <!-- 指定你的标签的类 -->  
        <attribute>
        	<name>permission</name> <!-- 属性名 -->
        	<required>false</required> <!-- 是否此属性名是必须的 -->
        	<rtexprvalue>true</rtexprvalue> <!-- 属性是否可以在jsp运行使其动态产生 -->
        	<type>java.lang.String</type>
        </attribute>
  </tag>  
</taglib> 

3.配置web.xml的jsp-config

<?xml version="1.0" encoding="UTF-8"?>

<web-app version="2.5" 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-app_2_5.xsd"> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <jsp-config> <taglib> <taglib-uri>TestTagUri</taglib-uri> <taglib-location>WEB-INF/testTag.tld</taglib-location> </taglib> </jsp-config> </web-app>

4.创建一个jsp页面,注意自定义标签的属性,如果permission属性为admin.view那么打印出不同的东西,记得载入标签库 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <%@ taglib uri="/WEB-INF/testTag.tld" prefix="out"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html> <head></head>

<body> <out:tags permission="admin.view"> <a>你有admin权限</a> </out:tags> </body> </html>

© 著作权归作者所有

共有 人打赏支持
肥猫钓鱼
粉丝 1
博文 29
码字总数 9287
作品 0
深圳
程序员
Spring自定义标签解析与实现

在Spring Bean注册解析(一)和Spring Bean注册解析(二)中我们讲到,Spring在解析xml文件中的标签的时候会区分当前的标签是四种基本标签(import、alias、bean和beans)还是自定义标签,如果是...

张旭峰 ⋅ 05/20 ⋅ 0

AngularJS —— 自定义指令

如何自定义指令:   Angular是基于模块的框架,因此上来肯定要创建一个自己的模块: var myAppModule = angular.module("myApp",[]);   然后在此模块基础上创建指令directive myAppModu...

孟飞阳 ⋅ 2016/12/11 ⋅ 0

JSP自定义标签基础

自定义标签:就是程序员定义的一宗好难过JSP标签,这种标签把那些信息显示逻辑封装在一个单独的Java类中,通过一个xml文件来描述它的使用。当页面中需要使用类似的显示逻辑时,就可以在页面中...

晨曦之光 ⋅ 2012/05/16 ⋅ 0

HTML标签自定义

<html xmlns:vanessa> </html> 本文是使用B3log Solo 从b3log-vanessa 进行同步发布的 原文地址:http://b3log-vanessa.appspot.com/articles/2010/10/26/1288098520177.html 原文链接:htt......

晨曦之光 ⋅ 2012/03/09 ⋅ 0

django为Form生成的label标签添加class

使用Form生成html标签的时候,虽然提供了widget的方法可以自定义标签的要是,但是只能给生成的input标签添加样式,对于生成的label标签无法添加样式。而很多场景下需要为label和input都添加c...

骑士救兵 ⋅ 05/25 ⋅ 0

(JavaEE-10)自定义标签库

自定义标签库开发 自定义标签简介 自定义标签主要用于移除Jsp页面中的java代码 使用自定义标签移除jsp页面中的java代码,只需要完成以下两个步骤 编写一个实现Tag接口的Java类(标签处理器类)...

_-Leon-_ ⋅ 2014/07/12 ⋅ 0

Riot - 你的下一个框架

前端,你是文艺界的程序员 我为什么要用Riot  优点明显,体积小,加载快,继承了react,Polymer等框架的优势,并简化他们,主要从以下几个方面考虑: 1. 自定义标签。  Riot 在所有浏览器上...

果汁凉茶丶 ⋅ 2017/11/23 ⋅ 0

Ember.js 入门指南——自定义包裹组件的HTML标签

按照惯例,先做好准备工作,使用Ember CLI命令生成演示所需的文件: ember g route customizing-component-element ember g component customizing-component-element ember g route home e......

ubuntuvim ⋅ 2015/10/12 ⋅ 0

iOS开发中标签控制器的使用——UITabBarController

iOS开发中标签控制器的使用——UITabBarController 一、引言 与导航控制器相类似,标签控制器也是用于管理视图控制器的一个UI控件,在其内部封装了一个标签栏,与导航不同的是,导航的管理方...

珲少 ⋅ 2015/11/13 ⋅ 0

jsp中的自定义标签

(jsp 1.0规范) 一,自定义标签主要用于移除Jsp页面中的java代码; 使用自定义标签移除jsp页面中的java代码,只需要完成以下两个步骤: 1,编写一个实现Tag接口的Java类(标签处理器类)。 2,...

宇宙执政 ⋅ 2014/11/30 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

zblog2.3版本的asp系统是否可以超越卢松松博客的流量[图]

最近访问zblog官网,发现zlbog-asp2.3版本已经进入测试阶段了,虽然正式版还没有发布,想必也不久了。那么作为aps纵横江湖十多年的今天,blog2.2版本应该已经成熟了,为什么还要发布这个2.3...

原创小博客 ⋅ 今天 ⋅ 0

聊聊spring cloud的HystrixCircuitBreakerConfiguration

序 本文主要研究一下spring cloud的HystrixCircuitBreakerConfiguration HystrixCircuitBreakerConfiguration spring-cloud-netflix-core-2.0.0.RELEASE-sources.jar!/org/springframework/......

go4it ⋅ 今天 ⋅ 0

二分查找

二分查找,也称折半查找、二分搜索,是一种在有序数组中查找某一特定元素的搜索算法。搜素过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜素过程结束;如果某一特定元素大于...

人觉非常君 ⋅ 今天 ⋅ 0

VS中使用X64汇编

需要注意的是,在X86项目中,可以使用__asm{}来嵌入汇编代码,但是在X64项目中,再也不能使用__asm{}来编写嵌入式汇编程序了,必须使用专门的.asm汇编文件来编写相应的汇编代码,然后在其它地...

simpower ⋅ 今天 ⋅ 0

ThreadPoolExecutor

ThreadPoolExecutor public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, ......

4rnold ⋅ 昨天 ⋅ 0

Java正无穷大、负无穷大以及NaN

问题来源:用Java代码写了一个计算公式,包含除法和对数和取反,在页面上出现了-infinity,不知道这是什么问题,网上找答案才明白意思是负的无穷大。 思考:为什么会出现这种情况呢?这是哪里...

young_chen ⋅ 昨天 ⋅ 0

前台对中文编码,后台解码

前台:encodeURI(sbzt) 后台:String param = URLDecoder.decode(sbzt,"UTF-8");

west_coast ⋅ 昨天 ⋅ 0

实验楼—MySQL基础课程-挑战3实验报告

按照文档要求创建数据库 sudo sercice mysql startwget http://labfile.oss.aliyuncs.com/courses/9/createdb2.sqlvim /home/shiyanlou/createdb2.sql#查看下数据库代码 代码创建了grade......

zhangjin7 ⋅ 昨天 ⋅ 0

一起读书《深入浅出nodejs》-node模块机制

node 模块机制 前言 说到node,就不免得提到JavaScript。JavaScript自诞生以来,经历了工具类库、组件库、前端框架、前端应用的变迁。通过无数开发人员的努力,JavaScript不断被类聚和抽象,...

小草先森 ⋅ 昨天 ⋅ 0

Java桌球小游戏

其实算不上一个游戏,就是两张图片,不停的重画,改变ball图片的位置。一个左右直线碰撞的,一个有角度碰撞的。 左右直线碰撞 package com.bjsxt.test;import javax.swing.*;import j...

森林之下 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部