jstl函数库及自定义函数库

这些函数只能在EL表达式内使用,EL表达式之外不能使用的,前缀+冒号+函数名。

 

jst函数l标签库使用:

 

后台:

      request.setAttribute("hello","hello world");

 

      List list = new ArrayList();

      list.add("t1");

      list.add("t2");

      request.setAttribute("list",list);

 

前台:

      <% taglib prefix="fn" uri=http://java.sun.com/jsp/jstl/functions %>

      

      ${fn:length(hello)}

 

      ${fn:length(list)}

 

输出:

 

11

 

2

 

自定义函数库:

 

      1.定义类和方法(方法必须是public static)

 

      2.编写自定义tld文件,编写完毕后将此文件放入WEB-INF或WEB-INF的任意子目录下

 

      3.在jsp中采用taglib指令引入自定义函数库

 

      4.采用 前缀+冒号+函数名  调用即可

 

后台:

 

package com.java_min.test

public class MyFunctions(){

    public static String sayHello(String name){

              return "Hello" + name;

    }

}

 

  文件名:  myfunctions.tld

  内容:   1.把样例文件的头部信息拷贝下来直到<uri>标签,包括<uri>标签, 

         2.把拷入的头部内容信息进行修改,不要和以前的一样就可以了,描述,前缀,uri等,例如 uri=http://www.java_min.com/functions    short-name="java_min"

         3.添加函数描述内容,即:声明自定义函数

  <function>

     <name>say</name>                             //此处的值就是jsp页面上调用时需要引用的函数名

     <function-class>com.java_min.test.MyFunctions</function-class>   //指定自定义类的路径

     <function-signature>java.lang.String sayHello(java.lang.String)</function-signature>  //生命函数返回值类型和参数类型,如果类型为基本类型,直接写类型即可,如int,long等,如果为对象类型,必须写完整路径,sayHello必须是要调用的函数名

  </function>

 

 

前台:

   <% taglib prefix="s" uri="http://www.java_min.com/functions" %>

      

      ${java_min:say("jack")}

 

输出:

 

Hello jack

 

 注意:前台我们的jack是写死的,那么怎样动态写入呢,例如:

 

后台:

      request.setAttribute("name","jack");

 

前台:

      ${java_min:say(name)}    就可以了

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值