自定义EL表达式,将对象转成json格式,关键代码

做javaweb开发的最常用的一个东西el表达式,这个东西是个很好用的东西,但有些时候我们处理复杂的字符串操作,就有些相形见绌了,这个时候就需要用自定义的方法去实现更多简洁方便的事情。

下面自定义一个将对象转成json字符串的自定义el表达式用来讲解这个自定义的过程:

ElFunctions.java

import net.sf.json.JSONObject;
public class ElFunctions{

    public static String toJsonString(Object obj){
        // 将java对象转换为json对象
        JSONObject json = JSONObject.fromObject(obj);
        String str = json.toString();
        return str;
    }
}

mobai-el-common.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">

    <tlib-version>1.0</tlib-version>
    <short-name>el</short-name>

    <!-- 将对象format成json字符串 -->
    <function>
        <name>toJsonString</name>

        <function-class>com.mobai.taglib.functions.ElFunctions</function-class>
        <function-signature>String toJsonString(java.lang.Object)</function-signature>

        <description>将对象format成json字符串</description>
        <example>${el:toJsonString(value)}</example>
    </function>
</taglib>

web.xml

<?xml version="1.0" encoding="UTF-8"?>  
<web-app version="2.5" 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-app_2_5.xsd">  
    <jsp-config>  
        <taglib>  
            <!-- 配置标签的引用地址 JSP页面中引用时使用-->  
            <taglib-uri>mobai.com/el-common</taglib-uri>  
            <!-- 配置标签的TLD文件地址 -->  
            <taglib-location>/WEB-INF/mobai-el-common.tld</taglib-location>  
        </taglib>  
    </jsp-config>  
    <welcome-file-list>  
        <welcome-file>index.jsp</welcome-file>  
    </welcome-file-list>  
</web-app>

index.jsp

<%@ taglib uri="mobai.com/el-common" prefix="el" %>
<body>
    ${el:toJsonString(user)}
</body>  

以上大概就是该功能的关键代码了,这里只列举了一个转换json字符串的方法,其他的大家可以根据需要去自定义各种各样的方法来用。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

浮生(FS)

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

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

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

打赏作者

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

抵扣说明:

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

余额充值