Javaweb EL自定義函數(shù)開發(fā)及代碼實(shí)例
1.什么是EL自定義函數(shù)
EL自定義函數(shù)是在EL表達(dá)式中調(diào)用的某個(gè)java類的靜態(tài)方法,這個(gè)靜態(tài)方法需在web應(yīng)用程序中進(jìn)行配置才可以被EL表達(dá)式調(diào)用。
EL自定義函數(shù)可以擴(kuò)展EL表達(dá)式的功能,讓EL表達(dá)式完成普通java程序代碼所能完成的功能。
2.EL自定義函數(shù)開發(fā)步驟
編寫EL自定義函數(shù)映射的java類中的靜態(tài)方法:這個(gè)Java類必須帶有public修飾符,方法必須是這個(gè)類的帶有public修飾符的靜態(tài)方法;
編寫標(biāo)簽庫(kù)描述文件(tld文件),在tld文件中描述自定義函數(shù);
在jsp頁面中導(dǎo)入和使用自定義函數(shù)。
3.示例代碼
實(shí)現(xiàn)的功能是連接兩個(gè)字符串。
編寫靜態(tài)方法,有public修飾符,且為靜態(tài)方法,elFunction.java
package com.javaweb.tag;
public class elFunction {
public static String concat(String str1,String str2){
return str1+str2;
}
}
編寫標(biāo)簽庫(kù)描述文件,即tld文件,相關(guān)的自定義函數(shù)的描述在function標(biāo)簽中,elFunction.tld
<?xml version="1.0" encoding="UTF-8"?> <taglib xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd" version="2.1"> <description>MyTag 1.1 core library</description> <display-name>MyTag core</display-name> <tlib-version>1.1</tlib-version> <short-name>c</short-name> <uri>http://java.www.com/jsp/jstl/core/elFunction</uri> <function> <name>concat</name> <function-class>com.javaweb.tag.elFunction</function-class> <function-signature>java.lang.String concat(java.lang.String,java.lang.String)</function-signature> </function> </taglib>
jsp文件中導(dǎo)入和使用自定義函數(shù)。
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<%@ taglib uri="http://java.www.com/jsp/jstl/core/elFunction" prefix="koala"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>" rel="external nofollow" >
<title>My JSP 'elFunction.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css" rel="external nofollow" >
-->
</head>
<body>
${koala:concat(param.name1,param.name2)}
</body>
</html>
運(yùn)行后輸出結(jié)果為:

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- javaWeb自定義標(biāo)簽用法實(shí)例詳解
- JavaWeb開發(fā)之JSTL標(biāo)簽庫(kù)的使用、 自定義EL函數(shù)、自定義標(biāo)簽(帶屬性的、帶標(biāo)簽體的)
- Java Web使用POI導(dǎo)出Excel的方法詳解
- 詳解velocity模板使javaWeb的html+js實(shí)現(xiàn)模塊化
- JavaWeb導(dǎo)出Excel文件并彈出下載框
- Java web的讀取Excel簡(jiǎn)單實(shí)例代碼
- Javaweb El表達(dá)式實(shí)例詳解
- JavaWeb動(dòng)態(tài)導(dǎo)出Excel可彈出下載
相關(guān)文章
利用微信小程序+JAVA實(shí)現(xiàn)微信支付的全過程
微信支付是一種在線支付解決方案,允許用戶通過微信內(nèi)的支付功能進(jìn)行付款,下面這篇文章主要給大家介紹了關(guān)于利用微信小程序+JAVA實(shí)現(xiàn)微信支付的相關(guān)資料,需要的朋友可以參考下2024-08-08
SpringBoot如何接收數(shù)組參數(shù)的方法
這篇文章主要介紹了SpringBoot如何接收數(shù)組參數(shù)的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12
Java反轉(zhuǎn)字符串和相關(guān)字符編碼的問題解決
反轉(zhuǎn)字符串一直被當(dāng)作是簡(jiǎn)單問題,大家的思想主要就是利用遍歷,首尾交換字符實(shí)現(xiàn)字符串的反轉(zhuǎn)。例如下面的代碼,就可以簡(jiǎn)單實(shí)現(xiàn)反轉(zhuǎn)。2013-05-05
IDEA如何一鍵部署SpringBoot項(xiàng)目到服務(wù)器
文章介紹了如何在IDEA中部署SpringBoot項(xiàng)目到服務(wù)器,使用AlibabaCloudToolkit插件進(jìn)行配置部署,步驟包括設(shè)置服務(wù)名稱、選擇文件上傳類型、選擇jar文件、添加服務(wù)器信息、輸入上傳路徑、選擇上傳后執(zhí)行的腳本以及執(zhí)行前的操作命令2024-12-12
springboot本地調(diào)試沒問題,打包運(yùn)行報(bào)錯(cuò)原因及分析
這篇文章主要介紹了springboot本地調(diào)試沒問題,打包運(yùn)行報(bào)錯(cuò)原因及分析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-05-05
Java結(jié)構(gòu)型設(shè)計(jì)模式之適配器模式詳解
適配器模式,即將某個(gè)類的接口轉(zhuǎn)換成客戶端期望的另一個(gè)接口的表示,主要目的是實(shí)現(xiàn)兼容性,讓原本因?yàn)榻涌诓黄ヅ?,沒辦法一起工作的兩個(gè)類,可以協(xié)同工作。本文將通過示例詳細(xì)介紹適配器模式,需要的可以參考一下2022-09-09
Intellij IDEA 2017新特性之Spring Boot相關(guān)特征介紹
Intellij IDEA 2017.2.2版本針對(duì)Springboot設(shè)置了一些特性,本篇文章給大家簡(jiǎn)單介紹一下如何使用這些特性,需要的朋友參考下吧2018-01-01
手寫java性能測(cè)試框架的實(shí)現(xiàn)示例
這篇文章主要為大家介紹了java實(shí)現(xiàn)性能測(cè)試框架示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07
springboot shardingjdbc與druid數(shù)據(jù)源沖突問題及解決
這篇文章主要介紹了springboot shardingjdbc與druid數(shù)據(jù)源沖突問題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-06-06

