首页 > 其他分享 >JSP 2.0中函数式标签库小结

JSP 2.0中函数式标签库小结

时间:2022-12-05 10:03:13浏览次数:36  
标签:xml http 标签 JSP vote liao 2.0 小结


 一直十分喜欢jsp 2.0的,其中自觉对jsp 2.0的标签库认识不够,故学习之,在学习中,发现在标签库中,有一类可以被称为
函数式标签库的标签,其功能主要是通过EL(表达式语言)对静态函数方法的调用,这可以简化一些标签的开发。

    想象在一个投票系统中,要展示投票的结果。假设有一个栏位要展示的是投票类型,比如展示给用户的是:单选,多选(当然,一般没
投票会在显示结果时这么傻展示出来的),而数据库中一般存储的是KEY,展示给用户的一般是value,则在页面展示时需要进行转换给用户看。
则我们先构造一个类,比如

package liao.vote;
public class votefunction
{

public static String changevotetype(int value)
{
//intvalue:这里比如是来自数据库的KEY
//在这里做转换的工作,这里省略了。。。。

}
}




然后设计自定义的标签库,比如vote.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">

<description>vote</description>
<display-name>vote</display-name>
<tlib-version>1.1</tlib-version>
<short-name>vote</short-name>
<uri>http://liao</uri> <function>
<name>changevotetype</name>
<function-class>liao.vote.VoteFunction</function-class>
<function-signature>java.lang.String votetype( java.lang.String )</function-signature>
</function>


  
  ......下面的形式雷同,可以有很多个<function> 
   
</taglib>
其中,<name>指名了函数的名称,这里是changevotetype,要和之前定义的名称一致,<function-class>指明了类的全名,要包括包名,而
<function-signature>则实际上是对函数的一个简单描述

当然,最后我们还要在web.xml里对其进行定义

<jsp-config>
<taglib>
<taglib-uri>http://liao/vote</taglib-uri>
<taglib-location>/WEB-INF/taglib/vote.tld</taglib-location>
</taglib>
</jsp-config>


注意把vote.tld放在WEB-INF/taglib文件夹下

在具体使用时,比如在JSP页面里
<%@ taglib prefix="vote" uri="http://liao/vote"%>
注意这里的uri要和web.xml里设置的<taglib-uri>相同

在实际调用时,如下方法调用
${vote:changevotetype{vote.votetype}}
其中vote.votetype是数据库里调用出来的key的值了,这里不详细展开。


标签:xml,http,标签,JSP,vote,liao,2.0,小结
From: https://blog.51cto.com/u_14230175/5911338

相关文章

  • spring 3 jdbc常用小结
    spring3的jdbc跟springmvc搭配起来挺好用的,本文试着小结其主要使用方法,并举出spring3.3.2中的一些信变化进行解析1)在dao中注入jdbctemplate,然后......
  • 好消息,scott的asp.net 2.0数据导航系列全部出版了
    好消息,scott的asp.net2.0数据导航系列全部出版了,大师级的作品,共75篇,分VB。NET和c#版本,全面系统讲解了asp.net2.0中数据控件,数据访问,缓存,master-de......
  • spring mvc中的拦截器小结
    在springmvc中,拦截器其实比较简单了,下面简单小结并demo下。preHandle:预处理回调方法,实现处理器的预处理(如登录检查),第三个参数为响应的处理器(如我们......
  • 【计算机毕业设计】基于JSP的网上购物系统的设计与实现
    分类号:TP315 U D C:D10621-408-(2007)5883-0密级:公开 编号:2003214012学位论文基于JSP的网上购物系统的设计与实现基于JSP的网上购物系统的设计与实现摘要近年来,随着I......
  • 【计算机毕业设计】基于jsp网上书店(源代码+论文)
    网上书店系统1.需求分析。参考设计要求,及可行性的分析,我们确定了如下的需求:1.数据库设计科学合理。2.网站主页面简洁美观,可以天蓝色为主色调。3.网站主页显示各个分类的及总......
  • CompletionService 使用小结
    本文为博主原创,转载请注明出处:实现异步任务时,经常使用 FutureTask来实现;一个简单的示例代码如下:publicstaticvoidmain(String[]args)throwsExecutionExcept......
  • oracle 10.2.0.1 64bit升级到10.2.0.4 64bit
    文档课题:oracle10.2.0.164bit升级到10.2.0.464bit.数据库:oracle10.2.0.164位系统:oel5.1164位1、前期准备1.1、关闭实例关闭需要升级的实例.SQL>shutdownimmediateD......
  • 八、JSP(Java Server Pages)
    八、JSP(JavaServerPages)8.1、什么是jspJavaServerPages:Java服务器端页面,也和Servlet一样,用于动态Web技术最大的特点:写jsp就像写HTML区别:HTMl只能给用户提......
  • OEL 5.11安装oracle 10.2.0.1
    文档课题:OEL5.11安装oracle10.2.0.1系统:oel5.1164位数据库:oracle10.2.0.164位软件包名称:10201_database_linux_x86_64.cpio.gz1、安装准备1.1、系统信息[root@leo-10g......
  • 在本地PC运行 Stable Diffusion 2.0
    StableDiffusion2.0在前几天已经发布了,新版本在上一个版本的基础上进行了许多改进。OpenCLIP中新的深度检测和更好的文本到图像模型是主要的改进之一。有很多的文章介绍......