如何定义自己的EL表达式
2009-07-18 08:06
483 查看
在定义一个EL表达式前,首先你要考虑你需要怎要的功能,毕竟你是需要一个功能才要定义一个EL,因为我想使用一个函数(以前c有的,但是在java中我找不到),比如2的5次幂(2*2*2*2*2),
首先给你的方法起一个名字,要有特点,使人容易记住,我想了一个:abc
1.定义一个类ELFunction
1)在里面定义一个静态的方法,方法名字叫abc,返回值为Integer ,有两个Integer类型的参数
public static Integer abc(Integer a,Integer b){
Integer result = 1;
for(int i = 0; i < b ; i++){
result = result * a;
}
return result;
}
2.定义xml文件
<?xml version="1.0" encoding="UTF-8"?>
<taglib version="2.0" 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 web-jsptaglibrary_2_0.xsd">
<tlib-version>1.0</tlib-version><!--版本-->
<short-name>el-funcitontwo</short-name><!--函数标记库名称-->
<function>
<!--你在jsp中使用EL标记的名字-->
<name>abc</name>
<!-- 这个东西是那个类实现的-->
<function-class>el.ELFunctiontwo</function-class>
<!-- 这个方法的返回值,名字,从参数类型,注意:参数只有类型没有变量-->
<function-signature>
java.lang.Integer abc(java.lang.Integer, java.lang.Integer)
</function-signature>
</function>
</taglib>
3.在jsp文件中使用自己定义的EL
因为是自己定义的,所以要引入并且给个前缀prefix
<%@ taglib uri="/WEB-INF/el-functiontwo.tld" prefix="f"%>
<%session.setAttribute("a",12);session.setAttribute("b",13);%>
${f:abc(3,3)}
首先给你的方法起一个名字,要有特点,使人容易记住,我想了一个:abc
1.定义一个类ELFunction
1)在里面定义一个静态的方法,方法名字叫abc,返回值为Integer ,有两个Integer类型的参数
public static Integer abc(Integer a,Integer b){
Integer result = 1;
for(int i = 0; i < b ; i++){
result = result * a;
}
return result;
}
2.定义xml文件
<?xml version="1.0" encoding="UTF-8"?>
<taglib version="2.0" 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 web-jsptaglibrary_2_0.xsd">
<tlib-version>1.0</tlib-version><!--版本-->
<short-name>el-funcitontwo</short-name><!--函数标记库名称-->
<function>
<!--你在jsp中使用EL标记的名字-->
<name>abc</name>
<!-- 这个东西是那个类实现的-->
<function-class>el.ELFunctiontwo</function-class>
<!-- 这个方法的返回值,名字,从参数类型,注意:参数只有类型没有变量-->
<function-signature>
java.lang.Integer abc(java.lang.Integer, java.lang.Integer)
</function-signature>
</function>
</taglib>
3.在jsp文件中使用自己定义的EL
因为是自己定义的,所以要引入并且给个前缀prefix
<%@ taglib uri="/WEB-INF/el-functiontwo.tld" prefix="f"%>
<%session.setAttribute("a",12);session.setAttribute("b",13);%>
${f:abc(3,3)}
相关文章推荐
- 【JTharness4_4_0】【8.如何定义自己的Test Scripts】
- JAVA架构师必知之事 —— 如何定义自己的职业路线?
- [MSSQL] 如何自己定义函数(返回多变量)
- rcp(插件开发) 如何查找自己定义的扩展点
- solr中如何定义自己的解析器插件(QParserPlugin)
- 如何将自己的实体类封装到一个list中,定义自己一系列的方法
- liferay中如何实现自己定义的方法
- LQ-300K在Windows 2000和Windows XP操作系统中如何自定义纸张?为何有时看不到自己定义的纸张?
- 如何定义自己的异常类
- 如何定义自己的ViewGroup
- 如何定义自己的线程函数与第三方系统兼容
- 如何定义自己的迭代器
- CodeIgniter如何定义自己的Helper和Library
- Android编译系统如何添加厂商自己定义产品的编译选项
- java如何定义自己的类
- 如何定义你自己的JavaScript类
- 如何定义自己的异常类
- 如何在博客园上面显示自己定义的头像--【sky原创】
- Android中如何自己定义吐司(Toast)
- 【JTharness4_4_0】【5.如何定义自己的Finder】