聊一聊自定义标签

什么是自定义标签
目前我们jsp使用的标签都是HTML的标签,浏览器会解释运行
自定义标签,就是根据需求,自己定义的标签,定义标签的名字、属性、作用等。

为什么要自定义标签
jsp文件中,往往需要实现类似的功能,编写很多类似的java代码

自定义标签,可以把这些java代码的代码定义成标签,而不必重复写java代码,能够使得jsp文件结构简练,可读性强

自定义标签由两部分组成
*.tld: 是一个xml文件,用来定义标签名字、属性、标签处理类、便签体等。
*.class文件:每一个标签,都对应一个标签处理器类,这个类遵循一定的规范,即需要继承或实现API中的特定类或接口,覆盖其中的方法

可见:自定义标签的功能依然还是用java类实现的。不过是java代码不再写在jsp中,而是用java类实现,使用标签调用,以达到复用性。

步骤一:创建 tld文件
自定义标签:首先在一个 tld文件中描述标签。Tld文件存在web-inf下
在web-inf下创建taglib.tld文件

这里写图片描述


tld文件解析
uri:是这个tld文件的唯一标记,可以自定义,不一定是真实存在的url。使用自定义标记时将根据该值寻找tld文件
tag:tld文件中将定义多个tag元素,描述多个标签
name:标签的名字
tag-class:实现该标签功能的类,是之后主要的工作
attribute:标签的属性,可以定义多个
name 属性名字
required 属性是否为必须
rtexprvalue属性是否能使用运行期表达式传值,true表示必须。

步骤二 创建标签处理类
标签处理类必须继承或实现API中的类
使用继承TagSupport类实现。覆盖其中的doStartTag方法。
标签处理类首先必须声明与tld文件中对tag定义的属性对应的的属性变量。例如本类中的处理器类必须声明attr,并提供setxxx方法,容器在运行时将自动调用setxxx方法赋值。

分析标签处理器类
pageContext:标签处理器类中可以直接使用pageContext,因为父类TagSupport中定义了名字pageContext的变量,类型是pageContext。
因此,可以直接使用pageContext还有request、response、session。

使用自定义标签 引入标签库
要使用自定义标签,首先必须引入标签库,使用taglib指令

在index.jsp中使用自定义标签,因此在index.jsp中引入标签库
<%@taglib uri=”http://www.xahlwl.com/taglib”prefix=”hl”%>

uri是在tld文件中定义的唯一标记,prefix是前缀。可以自定义,在一个jsp中可以引入多个标签库,前缀不能重复。
这里写图片描述
这里写图片描述
这里写图片描述
还有一个登陆表单未完待续…

内容概要:本文详细介绍了基于C语言和555电路组成的DC-AC变换器的设计与实现。项目旨在提高电能转换效率和质量,提供多种控制模式,降低系统成本,并改善系统稳定性和可靠性。文中详细描述了硬件电路设计(如电源管理、555定时器、单片机控制、PWM信号产生、输出滤波、反馈控制及保护电路)和软件模型架构(包括系统初始化、输入采样、控制算法、驱动信号生成、输出反馈、通信与监控及系统保护)。此外,文章还涵盖了GUI界面设计,确保用户友好性和易用性。最后,讨论了项目的应用领域(如可再生能源系统、电动汽车、家庭电力系统、工业控制系统、智能电网、电力备用系统、移动通信设备)、未来改进方向(如提升控制精度、强化硬件冗余设计、智能化监控与诊断、节能与环保设计、远程升级与维护、设备互联与集成、高频率变换技术和集成化与小型化)。适合人群:具备定编程基础,特别是对嵌入式系统和电力电子有定了解的研发人员和技术爱好者。使用场景及目标:①学习如何设计高效的DC-AC变换器,掌握555电路与单片机结合的应用;②理解并实践PWM调制、PID控制等关键技术;③了解如何通过GUI界面实现用户交互和系统监控;④探索DC-AC变换器在可再生能源、电动汽车等领域的实际应用。其他说明:此项目不仅提供了详细的硬件和软件设计指南,还包括完整的代码示例和调试建议,有助于读者全面掌握DC-AC变换器的设计与实现。项目强调了实际应用中的挑战及其解决方案,鼓励读者进行创新和改进,以满足不同场景下的需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值