1. 程式人生 > >自定義EL表達式,將對象轉成json格式,關鍵代碼

自定義EL表達式,將對象轉成json格式,關鍵代碼

地址 .com rar json common onf jsp頁面 conf 標簽

做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字符串的方法,其他的大家可以根據需要去自定義各種各樣的方法來用。

自定義EL表達式,將對象轉成json格式,關鍵代碼