如果JSTL的方法库没有满足需要,可以使用自定义方法进行扩展
public class Function{ public static int length(Object obj){ //返回对象的长度 if(obj == null){ return 0; } if(obj instanceof StringBuffer){ return lenth(((StringBuffer)obj).toString()); } if(obj instanceof String){ return ((String)obj).getBytes.length; } if(obj instanceof Collection){ return ((Collection)obj).size(); } } }配置文件
<?xml version="1.0" ecoding="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 web-jsptaglibrary_2_0.xsd version="2.0"> <description>custom functionslibrary</description> <display-name>customfunctions</display-name> <tlibversion>1.1</tlibversion> <shortname>function</shortname> <uri>http://www.clf.com/tags</uri> <function> <description>descriptioncontent </description> <name>lenth</name> <function-class>com.chen.Funtion</function-class> <function-signature> int length(java.lang.Object) </function-signature> <example> ${fn:length(string)} </example> <function> </taglib>自定义方法的声明写在 <function-signature>标记里面,格式为
返回值 方法名(参数1类型,参数2类型……)
加入有个String型变量,赋值“字符串测试”
在JSP页面中定义的标签库的前缀是“fn”,则用法如下
${fn:length(string)}
这句话就能输出字符串的长度
相关文章
- 09-29spring-JSP自定义标记中的i18n翻译
- 09-29.NetCore实现word转PDF无第三方水印+批量生成自定义水印(不用安装Microsoft和WPS插件)
- 09-29SSM项目开发日记03-利用JSP自定义标签来实现JSTL转JSON对象
- 09-29微信公众号第三方开发之五配置自定义菜单
- 09-29java微信二次第三方开发,token认证,消息事件接收,图文素材库,自定义菜单等功能
- 09-29打通版微社区(4):微信第三方服务部署——JSP的IIS部署
- 09-29第三方平台也能为未微信认证的订阅号调用自定义菜单接口和素材管理接口
- 09-29卡方分箱、KS分箱、最优IV分箱、树结构分箱、自定义分箱
- 09-29iOS 第三方自定义Alertview项目MBProcessHud中的重要代码分析
- 09-29cas sso单点登录系列4_cas-server登录页面自定义修改过程(jsp页面修改)