定义和使用EL函数

随时随地阅读更多技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666)

分为三个步骤:

1、编写Java类,并提供公共静态方法,用于实现EL函数的具体功能。

2、编写标签库描述文件,对函数进行声明。文件扩展名为.tld,保存到WEB-INF文件夹下。

3、JSP页面中引用标签库,实现相应功能。

下面用一个简单示例演示:

入口页面index.jsp:

<%@page import="java.net.URLDecoder"%>
<%@ page language="java" import="java.util.*"
    contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>起始页</title>
</head>
<body>
	<form name="form1" method="post" action="result.jsp">
	<textarea name="content" cols="30" rows="5"></textarea>
	<br>
	<input type="submit" name="Button" value="提交"/>
	</form>
</body>
</html>


展示页面result.jsp:

<%@page import="java.sql.*"%>
<%@ page language="java" import="java.util.*" autoFlush="true"
	contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<%@taglib uri="/stringUtil" prefix="w"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
	内容为:
	<br> ${w:shiftEnter(param.content)}
</body>
</html>


标签库描述文件:

stringUtil.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/j2eeweb-jsptaglibrary_2_0.xsd"
	version="2.0">

	<tlib-version>1.0</tlib-version>
	<uri>/stringUtil</uri>
	<function>
		<name>shiftEnter</name>
		<function-class>com.home.web.util.StringUtil</function-class>
		<function-signature>java.lang.String shiftEnter(java.lang.String)
		</function-signature>
	</function>
</taglib>


StringUtil.java:

package com.home.web.util;

public class StringUtil {

    /**
     * 
     * @description 处理字符串。替换回车换行为<br>
     *              ,空格为 
     * @param str
     * @return
     */
    public static String shiftEnter(String str) {
        String newStr = str.replaceAll("\r\n", "<br>");
        newStr = newStr.replace(" ", "&nbsp");
        return newStr;
    }

}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

u010142437

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值