简介:
使用EL函数库需要导入jstl的jar包:
然后导入标签:
<%@taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | String toUpperCase(String input):把参数转换成大写 String toLowerCase(String input):把参数转换成小写 int indexOf(String input, String substring):从大串中找出小串的位置 boolean contains(String input, String substring):大串是否包含小串,包含为 true boolean containsIgnoreCase(String input, String substring):大串是否包含小串,不区分大小写 boolean startsWith(String input, String substring):是否以小串为前缀 boolean endsWith(String input, String substring):是否以小串为后缀 String substring(String input, int beginIndex, int endIndex):截取子串,左闭右开 String substringAfter(String input, String substring):获取大串中小串所在位置后面的字符串 String substringBefore(String input, String substring):获取大串中小串所在位置前面的字符串 String escapeXml(String input):将传入的 "<" 、 ">" 、 "&" 、 "'" 、 "" " 进行转义 String trim(String input):取出前后空格 String replace(String input, String substringBefore, String substringAfter):替换 String[] split(String input, String delimiters):分割字符串 int length(Object obj):可以获取字符串、数组、各种集合的长度! String join(String array[], String separator):联合字符串数组 |
以上就是EL函数库的函数,使用格式:
1 2 3 4 5 6 | ${函数库前缀:函数名} 例如:导入标签时,prefix="fn"定义前缀为fn <%@taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> ${fn:length(arr) } -- 得到arr的长度 ${fn:toLowerCase(Hello) } -- 首字母小写,输出效果:"hello" |
自定义函数库:
定义一个Java类,可以有任意个方法,但是必须是static静态方法,并且要有返回值。
package fn;
public class MyFn {
public static String fun() {
return "第一个自定义标签";
}
}
在WEB-INF目录下创建tld文件夹,并创建一个a.tld文件进行配置:
在上面的类中,每增加一个函数,就必须在下面的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">
<description>No.1</description> <!-- 描述 -->
<display-name>cdml-functions</display-name> <!-- 名称 -->
<tlib-version>1.0</tlib-version> <!-- 版本 -->
<short-name>ml</short-name> <!-- 前缀 -->
<uri>http://www.cdml.cn/el/functions</uri> <!-- 地址 -->
<function>
<name>fun</name>
<function-class>fn.MyFn</function-class>
<function-signature>java.lang.String fun()</function-signature>
</function>
</taglib>
在新建的JSP页面导入标签:
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@taglib uri="/WEB-INF/tld/a.tld" prefix="ml" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>title</title>
</head>
<body>
<h1>${ml:fun() }</h1>
</body>
</html>
${ml:fun() }的形式使用这个函数,启动服务器并访问jsp:
结果成功输出了函数返回的字符串。
标签:
JSP
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)