自定义<%@ taglib prefix="cf" uri="http://training.bmcc.com.cn/tld/functions"%> 

就可以根据${cf:proxyConfig('elearning_play')}

实现自定义标签 读取  proxyConfig中的内容,

如果我们使用jsp2,则web.xml使用的是servlet2.4以上的版本。那我们看一下web.xml对应的头文件:

新增的特性是:

<web-app version= "4"
xmlns="http://javasuncom/xml/ns/j2ee"
xmlns:xsi="http://wwwworg/2001/XMLSchema-instance"
xsi:schemaLocation="http://javasuncom/xml/ns/j2ee
http://javasuncom/xml/ns/j2ee/web-app_2_xsd" >
</web-app>

首先在web.xml中添加如下代码:

 <jsp-config>
<taglib>
<taglib-uri>http://training.bmcc.com.cn/tld/functions</taglib-uri>
<taglib-location>/WEB-INF/customfunction.tld</taglib-location>
</taglib>
</jsp-config>

根据上面的

<%@ taglib prefix="cf" uri="http://training.bmcc.com.cn/tld/functions"%> 

得到taglib-location   这里得到的是customfunction.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">
<display-name>Custom Functions</display-name>
<tlib-version>1.1</tlib-version>
<short-name>cf</short-name>
<uri>http://training.bmcc.com.cn/tld/functions</uri>
<function>
<name>proxyConfig</name>
<function-class>com.cmbj.training.common.util.ProxyConfigUtil</function-class>
<function-signature>java.lang.String getProxyURL(java.lang.String)</function-signature>
</function>
<function>
<name>popedomCheck</name>
<function-class>com.cmbj.training.common.util.PopedomCheckUtil</function-class>
<function-signature>boolean check(java.util.Map, java.lang.Integer)</function-signature>
</function>
<function>
<name>checkEmployeeJob</name>
<function-class>com.cmbj.training.common.util.UserJobUtil</function-class>
<function-signature>boolean checkEmloyeeJob(java.lang.String)</function-signature>
</function>
<function>
<name>checkManager</name>
<function-class>com.cmbj.training.common.util.UserJobUtil</function-class>
<function-signature>boolean checkManager(java.lang.String)</function-signature>
</function>
<function>
<name>getValByKey</name>
<function-class>com.cmbj.training.common.util.ConstantsMapUtil</function-class>
<function-signature>java.lang.String getValByKey(java.util.Map, java.lang.String)</function-signature>
</function>
<function>
<name>titleFormat</name>
<function-class>common.base.util.StringUtil</function-class>
<function-signature>java.lang.String titleFormat(java.lang.String, java.lang.Integer)</function-signature>
</function>
<function>
<name>titleFormat2</name>
<function-class>common.base.util.StringUtil</function-class>
<function-signature>java.lang.String titleFormat(java.lang.String, java.lang.Integer, java.lang.String)</function-signature>
</function> <function>
<name>checkRoleByName</name>
<function-class>com.bestnet.common.util.RoleUtil</function-class>
<function-signature>boolean checkRoleByName(java.util.Map, java.lang.String)</function-signature>
</function> <function>
<name>checkRoleByCode</name>
<function-class>com.bestnet.common.util.RoleUtil</function-class>
<function-signature>boolean checkRoleByCode(java.util.Map, java.lang.String)</function-signature>
</function>
</taglib>

根据name得到 类路径:

<function-class>com.cmbj.training.common.util.ProxyConfigUtil</function-class>

类内容如下:

public class ProxyConfigUtil {

    private static ResourceLoadUtil RESOURCE_LOADUTIL = new ResourceLoadUtil("/proxyConfig.properties");

    private ProxyConfigUtil() {

    }

    public static String getProxyURL(String proxyURLKey, String defaultVal) {
return RESOURCE_LOADUTIL.getVal(proxyURLKey, defaultVal);
} public static String getProxyURL(String proxyURLKey) {
return getProxyURL(proxyURLKey, "");
} public static String getProxyParam(String key){
return RESOURCE_LOADUTIL.getVal(key);
}

最后得到配置文件,读取内容,得到相应的url内容${cf:proxyConfig('elearning_play')}
elearning_play=http\://***.***.***\:8011

最终完成自定义标签的配置。

taglib 自定义标签的更多相关文章

  1. thinkphp5 taglib自定义标签教程

    学着写了一下,终于搞定了,顺便分享一下!taglib是tp框架自定义标签功能,如果你用过cms,肯定见过类似: {dede:arclist typeid='' row='' col='' titlel ...

  2. ThinkPHP3.2.3 自定义标签库的使用

    ThinkPHP 3.2.3 手册中标签库驱动的地址是: http://www.kancloud.cn/manual/thinkphp/1859 标签库的地址是:http://www.kancloud ...

  3. JSP2.2自定义标签、EL函数

    简介 JSTL是一个JSP标准标签库,可以解决大部分问题,但是如果我们需要一些更特殊的功能,就需要自定义类似JSTL中标签的标签.如果EL表达式无法满足我们的需求,我们也可以自定义EL函数. tld后 ...

  4. [JSP]自定义标签库taglib

    自定义标签的步骤 自定义标签的步骤大概有三步: 1.继承javax.servlet.jsp.tagext.*下提供的几个标签类,如Tag.TagSupport.BodyTagSupport.Simpl ...

  5. [Java] JSP笔记 - 自定义标签

    自定义标签的创建步骤: 自定义标签的四大功能: 自定义标签的类结构: 在 1.0 中呢, 可以将 <body-content> 的值设置为 JSP, 2.0中则不允许在自定义标签体中出现j ...

  6. thinkphp自定义标签库

    thinkphp ~ php中 的类, 的成员变量, 本身是没有类型说明的, 那么我怎么知道它的类型呢? 或初始值呢? 通常在类定义中, 如果能给一个初始值的(对于已知简单类型的),最好给一个初始值, ...

  7. 12 自定义标签/JSTL标签库/web国际化/java web之设计模式和案例

    EL应用      自定义一个标签,实现两个字符串的相加 1回顾      1.1servlet生命周期           init(ServletConfig)           service ...

  8. EL函数以及自定义标签的应用

    一.EL函数(调用普通类的静态方法) 编写步骤(自定义EL函数的编写步骤即自定义标签的编写步骤): ①编写一个普通的java类,提供一个静态方法,功能自定,例如下: package cn.wzbril ...

  9. JSTL 自定义标签

    编写描述标签的tld文件,把这个文件放到web-inf/目录下,才能在jsp页面上调用自定义的标签 package test.yz; import java.io.IOException; impor ...

随机推荐

  1. Blackhat EU 2013 黑客大会(Full Schedule for Black Hat USA 2013)

    大会文档下载:https://www.blackhat.com/eu-13/archives.html 此次BH EU 议题整体较水,涉及系统安全.移动安全.网络传输安全.WEB安全.游戏安全等.下面 ...

  2. 在其他页面调用 Discuz 7.2 BBS 论坛会员登录信息

    require_once './bbs/include/common.inc.php'; $discuz_uid 是用户ID $_DSESSION是用户所有信息

  3. BroadCastReceiver相关知识--读书笔记

    2013-12-30 16:55:07 1. BroadCastReceiver是Android四大组件之一,本质上是一个系统级的监视器. 2. 每次BroadCast事件发生后,系统都会创建对应的B ...

  4. exe转msi

    1.起因 由于域推送只支持msi安装包,而很多常用的工具比如Adobe Flash Player.exe.SilverLight.exe都是exe格式的,于是引出要将exe转成silent msi的工 ...

  5. Java并发编程(三)后台线程(Daemon Thread)

    后台线程,守护线程(Daemon Thread) 所谓的后台线程,就是指这种线程并不属于程序中不可或缺的部分,因此当所有的非后台线程结束时,程序也就终止了,同时会杀死进程中的所有后台线程.通过setD ...

  6. wp8.1 Study11:APP里文件读写和使用XML和Json序列化

    一.文件读写 1.基本操作(使用FileIO API) 这个方法在上一个stduy已经学过,那么贴出来复习下,代码如下: private async void writeTextToLocalStor ...

  7. AngularJS结构简介

    AngularJS是MVC架构,M是C里面的属性-值,C是js的class,V是DOM 各个关键特性的结构如下图所示: http://my.oschina.net/tommyfok/blog/2970 ...

  8. SSH(2)-- ssh_config和sshd_config

    假定服务器ip为192.168.1.139,ssh服务的端口号为22,服务器上有个用户为pi,两边都是ubuntu. ssh_config和sshd_config都是ssh服务器的配置文件,二者区别在 ...

  9. Activity(活动)-初讲

    是一种可以包含用户界面的组件,主要用于和用户进行交互. 上一次我们的MainActivity.java 是ADT帮我们自动创建的.手动创建Activity可以加深我们的理解和记忆,于是我们先自己手动创 ...

  10. pager分页框架体会

    <pg:pager> 元素的属性中: maxPageItems说的是每页偏移量是多少,这个并不是说每一页显示多少,而是第二页比第一页来说,在第一页的尾部增加多少,第一页又被覆盖多少,是决定 ...