创建转换的类
这个类作用只是为了将对象转换成json串
import com.alibaba.fastjson.JSON;
public class ElCommons{
/**
* 将对象中存在值的字段转换成为json串
* @param obj
* @return
*/
public static String toJsonString(Object obj){
// 将java对象转换为json对象
String jsonString = JSON.toJSONString(obj);
return jsonString;
}
}
创建.tld
同目录 WEB-INF下创建文件,此处文件名为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.gss.manage.taglib.ElCommons</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 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_3_0.xsd" version="3.0">
<jsp-config>
<taglib>
<!-- 配置标签的引用地址 JSP页面中引用时使用-->
<taglib-uri>el-common</taglib-uri>
<!-- 配置标签的TLD文件地址 -->
<taglib-location>/WEB-INF/el-common.tld</taglib-location>
</taglib>
</jsp-config>
....
页面使用
在头部声明自定义el表达式并且使用${el:toJsonString(obj)}进行转换
<%@ taglib uri="el-common" prefix="el" %>
${el:toJsonString(item)}
本文介绍了如何在SpringMVC中自定义EL表达式,通过创建转换类、定义.tld文件并配置web.xml,将页面上的对象转换为JSON字符串。在页面上,可以使用${el:toJsonString(obj)}来实现对象的转换。
208

被折叠的 条评论
为什么被折叠?



