问题的提出,为什么要用Taglib(标签库)? 马 克-to-win:在学jsp第三章jsp基础时,我们接触过脚本元素(Scripting Element)。 于是Sun公司就推出了taglib(标签库)技术。 一 句话概括taglib技术:jsp中的一个标签儿对应着一段纯java代码,像过去一样,放在一个纯java文件当中,绝对不是html和java混在一起,难以调试。 taglib推出以后的巨大变革 马 克-to-win:taglib技术的推出,使得很多大软件公司都推出自己的标签儿库,比如sun公司推出自己的jstl(java standard标准标签库),Apache 当然他们这些架构的产生也归功于taglib技术。 更多请看:https://blog.csdn.net/qq_44594371/article/details/103183382
taglib的配置文件说明 <?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 > 自定义taglib <? > <taglib xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance > 引入自定义taglib <%@ taglib prefix="fns" uri="/WEB-INF/tlds/fns.tld" %> jsp中调用taglib <function> <description
taglib的配置文件说明 <?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 > 自定义taglib <? > <taglib xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance > 引入自定义taglib <%@ taglib prefix="fns" uri="/WEB-INF/tlds/fns.tld" %> jsp中调用taglib <function> <description
taglib主要元素 taglib.tld <?xml version="1.0"encoding="UTF-8" ?> l shortname指明推荐使用的prefix。 <jsp-config> 或者在JSP中直接使用 <%@ taglib uri="/WEB-INF/taglib.tld" prefix="taglib"%> 实例 使用TagSupport自定义标签 <shortname>指明推荐使用的prefix为taglib。 <uri>指明引用这个标签库时使用的uri为http://notes.javaee.jsp.com/taglib。 <%@ taglib uri="http://notes.javaee.jsp.com/taglib"prefix="taglib"%> 由于前面定义的标签name为hello,所以可以使用的标签名为: prefix+name,即:taglib:hello。
3.JSP指令:page指令、include指令、taglib指令(现在不讲) 3.1 page指令 page指令的用途:设置与jsp页面相关的一些信息,比如说设置jsp页面的编码,jsp页面的默认语等
2.Taglib的各种实例: 1)helloWorld: 注 意当你做下面的项目,首先选择还是老样子,做Dynamic Web project,但是当选择dynamic web module version 例 1.2.1 hello.jsp: <%@ page contentType="text/html; charset=GBK" %> <%@ taglib uri="/WEB-INF/tagExampleLib.tld prefix="greeter" %> <html> <body> <greeter:Hello/> </body> </html> tagExampleLib.tld:(这是个Taglib DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc. //DTD JSP Tag Library 1.1//EN" "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd"> <taglib
一.TagLib#组件概述 TagLib#用于处理媒体文件,例如视频,音频和照片等等,TagLib#采用LGPL和MPL两种开源协议。TagLib#是用于读取和编辑几种流行音频格式的元数据的库。 该库的地址:https://github.com/mono/taglib-sharp。 TagLib#(又名taglib-sharp)是一个用于阅读和写作的库媒体文件中的元数据,包括视频,音频和照片格式。 这个玩意的文档真是少,国内国外翻遍了,也没找到多少,写一篇不容易啊。 二.TagLib#组件应用 上面介绍了组件的背景和简单的叙述,下面就该介绍一下简单的应用,毕竟无法应用的组件,没有介绍的意义。 1.解析照片 public static TagLib.File ParsePhoto(string path) { if (string.IsNullOrEmpty
例 1.2.6: <%@ page contentType="text/html; charset=GBK" %> <%@ taglib uri="/WEB-INF/tagExampleLib.tld" DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc. //DTD JSP Tag Library 1.1//EN" "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd"> <taglib tag> <name>Hello</name> <tagclass>com.marktowin.HelloWorldTag</tagclass> </tag> </taglib
> </taglib> <taglib> <taglib-uri>http://java.sun.com/jstl/fmt-rt</taglib-uri> <taglib-location /jstl/core</taglib-uri> <taglib-location>/WEB-INF/c.tld</taglib-location> </taglib> <taglib </taglib-location> </taglib> <taglib> <taglib-uri>http://java.sun.com/jstl/sql</taglib-uri > <taglib-location>/WEB-INF/sql.tld</taglib-location> </taglib> <taglib> <taglib-uri> > </taglib> <taglib> <taglib-uri>http://java.sun.com/jstl/x</taglib-uri> <taglib-location
初步估计就是问题出在web.xml里面,而且就是taglib的书写上。 我的web.xml出问题的部分书写如下: <taglib> <taglib-uri>/WEB-INF/runqianReport4.tld</taglib-uri> <taglib-location >/WEB-INF/runqianReport4.tld</taglib-location> </taglib> 在TOMCAT上跑得那个之欢畅啊。 后来进过查找taglib的有关在web.xml的书写和要求,发现应该这么书写: <jsp-config> <taglib> <taglib-uri>/WEB-INF/runqianReport4 .tld</taglib-uri> <taglib-location>/WEB-INF/runqianReport4.tld</taglib-location> </taglib> <
> </taglib> <taglib> <taglib-uri>http://java.sun.com/jstl/fmt-rt</taglib-uri> <taglib-location /jstl/core</taglib-uri> <taglib-location>/WEB-INF/c.tld</taglib-location> </taglib> <taglib </taglib-location> </taglib> <taglib> <taglib-uri>http://java.sun.com/jstl/sql</taglib-uri > <taglib-location>/WEB-INF/sql.tld</taglib-location> </taglib> <taglib> <taglib-uri> > </taglib> <taglib> <taglib-uri>http://java.sun.com/jstl/x</taglib-uri> <taglib-location
即删除这句话 <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %> <%@ taglib prefix="fmt" uri="http <jsp-config> <taglib> <taglib-uri>http://java.sun.com/jstl/core</taglib-uri> <taglib-location >/WEB-INF/tld/c.tld</taglib-location> </taglib> <taglib> <taglib-uri>http://java.sun.com/jstl/ fmt</taglib-uri> <taglib-location>/WEB-INF/tld/fmt.tld</taglib-location> </taglib> </jsp-config
>/WEB-INF/jsp/debug-taglib.tld</taglib-location> </taglib> 如果MyEclipse一直在报错,应该把<taglib /tomcat/debug-taglib</taglib-uri> <taglib-location>/WEB-INF/pager-taglib.tld</taglib-location <taglib> <taglib-uri>struts-html</taglib-uri> <taglib-location>/WEB-INF </taglib-uri> <taglib-location>/WEB-INF/tld/struts-nested.tld</taglib-location> </taglib > <taglib> <taglib-uri>struts-logic</taglib-uri> <taglib-location>
一、定义标签文件(web.xml) /tags/struts-logic /WEB-INF/struts-logic.tld 二、引用标签文件(jsp文件) < %@ taglib uri="/tags /struts-logic" prefix="logic" %> 三、标签文件说明(struts-logic.tld) (1)empty标签 类名:org.apache.struts.taglib.logic.EmptyTag bodycontent=JSP 引用logic:empty 属性 attribute:name,property,scope 功能:判断对象的值是否为空 (2)equal 类名:org.apache.struts.taglib.logic.EqualTag attribute:cookie,header,name,parameter,property,scope,value 功能:等于比较符 (3) forward org.apache.struts.taglib.logic.ForwardTag attribute:cookie,header,name,parameter,property,scope,value 功能:小于比较符 (9)match 类名:org.apache.struts.taglib.logic.MatchTag
fn数据库(不使用) http://java.sun.com/jsp/jstl/sql sqlXML(不使用) http://java.sun.com/jsp/jstl/xml x在jsp标签库中使用taglib 指令引入标签库CORE 标签库<%@ taglib prefix=“c” uri=“http://java.sun.com/jsp/jstl/core” %>XML 标签库<%@ taglib prefix =“x” uri=“http://java.sun.com/jsp/jstl/xml” %>FMT 标签库<%@ taglib prefix=“fmt” uri=“http://java.sun.com /jsp/jstl/fmt” %>SQL 标签库<%@ taglib prefix=“sql” uri=“http://java.sun.com/jsp/jstl/sql” %>FUNCTIONS 标签库 -1.2.1.jartaglibs-standard-spec-1.2.1.jar2、使用taglib指令引入你需要的标签库<%@ taglib uri=“http://java.sun.com/jsp
1:去ADOBE下载FLEX的TAGLIB for JSP. 将flex-webtier-jsp.jar 拷贝到WEB-INF/flex/jars 文件夹. 3:在WEB.XML中添加 <taglib> <taglib-uri>FlexTagLib</taglib-uri > <taglib-location>/WEB-INF/lib/flex-bootstrap-jsp.jar</taglib-location> </taglib> 注:暂时只能使用flex3的标签,在
(1)在JSP中指定taglib的uri:<%@ taglib uri="/helloworld" prefix="mytag" %>。 (2)在web.xml中配置tag-location: <taglib> <taglib-uri>/helloworld</taglib-uri> <taglib-location>/WEB-INF /helloworld.tld</taglib-location> </taglib> (3)在tag-location中指定的.tld文件中定义实现标签的处理类: <short-name>mytag //DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <taglib> <taglib-uri >/helloworld</taglib-uri> <taglib-location>/WEB-INF/helloworld.tld</taglib-location> </taglib> </web-app
out.jsp 代码: <%@ page language="java" pageEncoding="utf-8"%> <%@ taglib uri="http://java.sun.com/jsp/jstl ----------------------------------- set.jsp 代码: <%@ page language="java" pageEncoding="utf-8"%> <%@ taglib -------------------------------- remove.jsp 代码: <%@ page language="java" pageEncoding="utf-8"%> <%@ taglib --------------------------------- catch.jsp 代码: <%@ page language="java" pageEncoding="utf-8"%> <%@ taglib ----------------------------------- if.jsp 代码: <%@ page language="java" pageEncoding="utf-8"%> <%@ taglib
在使用JSTL标签库时需要在JSP中添加对应的taglib指令标签。 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>JSTL标签分类根据JSTL标签所提供的功能,可以将其分为5个类别。 <%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>XML标签JSTL XML标签库提供了创建和操作XML文档的标签。 <%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml" %>JSTL函数JSTL包含一系列标准函数,大部分是通用的字符串处理函数。 ${name}JSTL标签库与EL表达式的使用JSTL标签库的使用步骤添加jstl.jar在JSP页面中添加taglib指令标签。
其次,创建tld文件 在 webapp/WEB-INF/ 下,创建taglib目录,并在taglib目录中,创建xxx.tld文件,如下: <? DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc. //DTD JSP Tag Library 1.2//EN" "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd"> <taglib> --是否可用jsp表达式--> </attribute> </tag> </taglib> uri的参数需要在jsp中引用,tag的name属性是标签的名称,permissions 最后,标签的使用 在jsp的头部引入自定义标签,如下: <%@taglib prefix="pm" uri="/WEB-INF/taglib/xxx"%> uri为tld文件中配置的uri,prefix