tld自定义标签之基础入门篇

article/2025/9/22 3:32:17

   一、tld说明

    tld,是taglib description 的缩写,其自定义标签一般用于jsp页面,tld其作用一般是在web项目中结

jstl、c标签等用于有效性判断、权限判断等方面,对前端的一些页面标签起到约束、限制的作用

    很多人只知道有这类型的标签,但不知道它有什么作用以及怎么去使用,所以,学会使用tld自定义标签对

项目会有很大的帮助,下面我会以一个自写的超级简单的demo(demo在文章最后会给出链接,有需要的程序员可

以下载来借鉴)来详细说明如何去使用tld,进行自定义标签,做有效性的判断。


   二、案例说明

    1. 基础架构图:



    2. tld自定义标签方法,需要以下几个步骤:

(1).在WEB-INF下新建一个tld文件,然后在tld文件写入以下代码:

<?xml version="1.0" encoding="UTF-8"?>
<taglib xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"version="2.0"><tlib-version>1.0</tlib-version><short-name>isnull</short-name><!-- 定义标签使用的短名称 --><!-- 自定义标签的形参都是域里面传递的参数值;自定义标签基本使用在jsp页面上 --><function><description>判断传递内容是否为空</description><!-- 对该标签的说明 --><name>hasvalue</name><!-- 定义标签名,放在短标签之后 --><function-class>util.Tld_util</function-class><!-- 标签处理域值的类路径  --><function-signature>boolean isnull(java.lang.String)</function-signature><!-- 标签处理域值的具体的类方法 --><example>${isnull:hasvalue(obj1)}</example><!-- 自定义标签的使用示范 ,域参数会自动传递到具体的方法里面--></function></taglib>
   每一个定义的参数我都已经附有说明,基本都是可以自行修改的,而自定义标签的处理域值的类路径和方法

需要和对应的项目的路径和方法相一致,这里使用的是本demo的类路径和方法;


(2).在Testtld.java类下,获取index.jsp页面提交的值,同时将该值放进域里面:

 index.jsp:

<form action="testtld" method="post"><input type="text" name="testtld" value="123"><input type="submit" value="提交">
</form>
 

 Testtld.java:

String getvalue=request.getParameter("testtld");
request.getSession().setAttribute("testtld", getvalue);//放进session域里面
response.sendRedirect(request.getContextPath()+"/test.jsp");
       

(3).在test.jsp页面引用自定义标签,这里判断的是tld的值是否为3,而使用不同的html标签:

<c:choose><c:when test="${isnull:hasvalue(testtld)}"><p>tld的值为123</p></c:when><c:otherwise><p>tld的值不是123</p></c:otherwise>
</c:choose>
<p>获取域值:${testtld}</p>


(4).定义处理域参数的类以及方法,Tld_util.java用于对域值的判断,由于在tld文件里已经指定了该类方法,

所以在jsp页面引用的时候会自动执行此方法进行对域值的判断:

public class Tld_util {public static boolean isnull(String testtld){String value = "123";System.out.println("获取到的域里面的值:"+testtld);if(testtld!=null && testtld.equals(value)){return true;}return false;		}
}
    
    三、结语

    1. tld自定义标签在很多的项目中都能被有效地用于前端的全局的权限或者有效性等的判断,极大加快了

项目的开发进度,相信很多程序员都感同身受,因为只需要稍微修改一下处理域值的方法就能很好地控制html

或js标签的使用;

    2. tld的使用方法并不是很难,如果博客看得不是还不是很明白,可以自行去下载本博客提供的这个小demo,

非常简单的架构,自行去尝试多几次,同时看看demo中的提供的注释,然后很快就能够上手,然后就可以自己去

测试自定义的标签;

    3. 附上demo的链接,有需要的可自行下载:http://download.csdn.net/detail/alan_liuyue/9832456;



http://chatgpt.dhexx.cn/article/OgEOg73y.shtml

相关文章

至少有一个JAR被扫描用于TLD但尚未包含TLD。

问题描述&#xff1a; 至少有一个JAR被扫描用于TLD但尚未包含TLD。 为此记录器启用调试日志记录&#xff0c;以获取已扫描但未在其中找到TLD的完整JAR列表。 在扫描期间跳过不需要的JAR可以缩短启动时间和JSP编译时间。 一个或多个listeners启动失败&#xff0c;更多详细信息…

至少有一个JAR被扫描用于TLD但尚未包含TLD。 为此记录器启用调试日志记录,以获取已扫描但未在其中找到TLD的完整JAR列表。

24-Jul-2022 17:18:15.259 信息 [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner.scanJars 至少有一个JAR被扫描用于TLD但尚未包含TLD。 为此记录器启用调试日志记录&#xff0c;以获取已扫描但未在其中找到TLD的完整JAR列表。 在扫描期间跳过不需要的…

TLD的环境配置

TLD的matlab代码调试 建议matlab版本保证比vs版本高&#xff0c;不然会出现很多问题。例如找不到编译器&#xff0c;以及识别不了程序之类的 我调试的环境 VS2015 Matlab2016a OpenCV3.4.1&#xff0c;后面会出一个windows下使用cmake编译opencv扩展包 因为matlab是没有编译…

TLD之检测篇(二)

TLD之检测篇&#xff08;二&#xff09; TLD之扯淡篇&#xff08;一&#xff09; 、 TLD之跟踪篇&#xff08;三&#xff09; 、 TLD之学习篇&#xff08;四&#xff09; 扫描方式前面已经说过&#xff0c;具体参数【5.3】&#xff1a;scales step 1.2, horizontal step 10…

TLD目标跟踪原理解析

转自http://blog.csdn.net/app_12062011/article/details/52277159 TLD(Tracking-Learning-Detection)是英国萨里大学的一个捷克籍博士生在其攻读博士学位期间提出的一种新的单目标长时间&#xff08;long term tracking&#xff09;跟踪算法。该算法与传统跟踪算法的显著区别在…

庖丁解牛TLD(一)——开篇

最近在网上多次看到有关Zdenek Kalal的TLD的文章&#xff0c;说他做的工作如何的帅&#xff0c;看了一下TLD的视频&#xff0c;感觉确实做的很好&#xff0c;有人夸张的说他这个系统可以和Kniect媲美&#xff0c;我倒是两者的工作可比性不大&#xff0c;实现的方法也不同。但这…

Java 中 *.tld 文件的说明

tld&#xff0c;是taglib description 的缩写&#xff0c;其自定义标签一般用于jsp页面&#xff0c;tld其作用一般是在web项目中结合jstl、c标签等&#xff0c;用于有效性判断、权限判断等方面&#xff0c;对前端的一些页面标签起到约束、限制的作用。 很多人只知道有这类型的标…

TLD跟踪算法介绍

点击上方“小白学视觉”&#xff0c;选择加"星标"或“置顶” 重磅干货&#xff0c;第一时间送达 TLD跟踪算法介绍 TLD(Tracking-Learning-Detection)是一种长时视频对象跟踪算法&#xff0c;首先要在视频一帧中指明对象位置&#xff0c;Tracking完成在视频的每一帧中…

TLD之学习篇(四)

TLD之学习篇&#xff08;四&#xff09; TLD之扯淡篇&#xff08;一&#xff09;、 TLD之检测篇&#xff08;二&#xff09; 、 TLD之跟踪篇&#xff08;三&#xff09; 这一部分是TLD算法的核心之处&#xff0c;有了前面两篇的铺垫&#xff0c;终于可以毫无顾忌的说说这一部分…

TLD简单配置

TLD的C配置 首先声明debug速度太慢&#xff0c;换成release,具有实时性。 Opencv版本 3.4.1 这里我们随机下载的版本&#xff0c;使用的arthurv版本 链接 后面我也会免费上传一份 操作步骤 新建vs工程项目 将src文件和include文件拷贝进项目中&#xff0c; 修改run_tld.cp…

TLD

http://blog.csdn.net/carson2005/article/details/7647500 TLD(Tracking-Learning-Detection)是英国萨里大学的一个捷克籍博士生在其攻读博士学位期间提出的一种新的单目标长时间&#xff08;long term tracking&#xff09;跟踪算法。该算法与传统跟踪算法的显著区别在于将传…

TLD(0)

一、TLD简介以及资源 其实TLD早在去年我就有听说了&#xff0c;之后看了一些视频&#xff0c;感觉很厉害哦。视频如下&#xff1a; 原作者演示的视频&#xff1a;http://www.tudou.com/programs/view/lQ3hPWFSefw/?resourceId0_03_05_03 其他人做得视频&#xff1a; http://v…

TLD之跟踪篇(三)

TLD之跟踪篇&#xff08;三&#xff09; TLD之扯淡篇&#xff08;一&#xff09;、 TLD之检测篇&#xff08;二&#xff09; 、 TLD之学习篇&#xff08;四&#xff09; 目标跟踪的一般思想是跟踪目标中关键点。TLD也是跟踪点&#xff08;但不是跟踪SIFT之类的关键点&#xff0…

项目中tld文件使用

原理及作用&#xff1a; TLD术语解释&#xff1a;标签库描述文件&#xff0c;如要在JSP页面中实现JSP标签&#xff0c;必须首先定义实现标签的类&#xff0c;然后在标签库描述文件&#xff08;TLD&#xff09;中 将写好的类映射成JSP标签,最后在JSP文件中使用定义好的标签&a…

什么是.tld文件

TLD术语解释&#xff1a;标签库描述文件. 如要在JSP页面中实现JSP标签&#xff0c;必须首先定义实现标签的类&#xff0c;然后在…

Tracking-Learning-Detection原理分析

转自http://johnhany.net/2014/05/tld-the-theory/ Tracking-Learning-Detection&#xff08;TLD&#xff09;是Zdenek Kalal提出的一种对视频中单个物体长时间跟踪的算法。我主要会根据他在2010年发表的论文《Tracking-Learning-Detection》来分析TLD算法的原理。该项目的首页…

TLD算法简介

TLD算法简介 TLD&#xff08;Tracking-Learning-Detection&#xff09;是 Zdenek Kalal 等人于 2009 至2012 年期间提出的单目标、长时间图像跟踪算法。与传统的单一跟踪算法相比&#xff0c;TLD 跟踪算法融合了跟踪器、检测器和学习模块三个部分&#xff0c;既能够对连续运动目…

行列式的逆序数定义

行列式的逆序数定义是一个直接定义&#xff0c;但并不直观。在实际计算中很少直接使用。因为计算逆序数的时间复杂度总是O(N^2), 总的时间复杂度确实O(n!), 所以计算机也不是用这个算法来计算的。 这个定义的好处是可以看清行列式的大概结构&#xff0c;用于定性计算&#xff0…

ACM 逆序对(逆序数)总结

最近做题遇到几次逆序数了&#xff0c;今天总结一下&#xff0c;以后遇到了再也不怕了。 首先说明一下什么是逆序数&#xff0c;下面是百度的定义&#xff1a; 在一个排列中&#xff0c;如果一对数的前后位置与大小顺序相反&#xff0c;即前面的数大于后面的数&#xff0c;那么…

排列的逆序数

百度百科&#xff1a; 在一个排列中&#xff0c;如果一对数的前后位置与大小顺序相反&#xff0c;即前面的数大于后面的数&#xff0c;那么它们就称为一个逆序。一个排列中逆序的总数就称为这个排列的逆序数。也就是说&#xff0c;对于n个不同的元素&#xff0c;先规定各元素之…