自定义EL表达式的功能方法

在JSP项目中,由于默认的jstl function库未提供所需功能,本文介绍了如何自定义EL表达式功能方法。通过创建JAVA类实现正则表达式检查字符串的功能,并在JSP页面上应用该方法,根据文件名后缀展示相应样式。调用方法时,确保传入的参数类型与方法匹配,即使方法接受String类型,也能接收并转换list、set、map等类型的数据。
摘要由CSDN通过智能技术生成

项目场景:JSP页面,类似jstl的function fn:库中没有适合的功能方法,需要自定义。

  本文示例JAVA类中实现根据正则表达式检测目标字符串返回真假的功能,JSP页面中实现根据文件名的后缀名,显示对应的样式。

//JAVA类 

package com.weigs.util;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class FunctionTag {
// 必须是静态方法 
	public static Boolean regExpTest(String regExp,String distStr){
		Pattern pattern = Pattern.compile(regExp);
		Matcher matcher = pattern.matcher(distStr);
		return matcher.find();
	}
}

//xxx.dtl文件

   
   

   
   
	
    
    
     
     1.0
    
    
	
    
    
     
     customfn
    
    
	
    
    
     
     http://com.weigs.util/custom/functiontags
    
    
	
    
    
		
     
     
		
     
     
      
      regExpTest
     
     
		
     
     
		
     
     
      
      com.qhgrain.app.gway.util.FunctionTag
     
     
		
     
     
		
     
     
      
      java.lang.Boolean regExpTest(java.lang.String,java.lang.String)
     
     
	
    
    

   
   


//JSP页面 
<%@ taglib prefix="customfn" uri="http://com.weigs.util/custom/functiontags"%>

   
   
	
    
    
     
     


注意:调用方法的时候必须类型要传入相同类型的值,否则的话会报错,不过对于方法体是String的话,是可以传入list,set,map那些,因为传入后会直接调用list的.toString()方法直接当字符串输出。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值