ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

SSM项目开发日记03-利用JSP自定义标签来实现JSTL转JSON对象

2021-07-13 19:31:10  阅读:336  来源: 互联网

标签:function 03 自定义 cUser xf JSTL toJSON JSONTool


SSM项目开发日记03-利用JSP自定义标签来实现JSTL转JSON对象

>>>2021-07-13


出于需求,要在页面获取JSTL标签获取到的对象转成JSON对象操作。

参考文章如下:

java对象转js对象_直到世界的尽头-CSDN博客

接下来直接记录代码

1.新建并编辑xf.tdl,在IDEA中的位置如下

在这里插入图片描述

<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
		http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
        version="2.0">
    <description>custom JSTL 1.1 function library</description>
    <display-name>JSTL</display-name>
    <tlib-version>1.1</tlib-version>
    <short-name>xf</short-name>
    <uri>com.data.web.view.function</uri>
    
    <function>
        <description>对象序列化为json字符串</description>
        <name>toJSON</name>
        <!-- 下面这里对应java类的路径,名称       -->
        <function-class>com.wilk.utils.JSONTool</function-class>
        <!--    依次对应返回类型,方法名和参数类型        -->
        <function-signature>java.lang.String toJSON(java.lang.Object)</function-signature>
    </function>

</taglib>

2.新建JSONTool类,并写出toJSON方法,注意类和方法的修饰符

package com.wilk.utils;

import com.fasterxml.jackson.databind.ObjectMapper;

/**
 * @author :WILK
 * @ClassName JSONTool
 * @date 2021/7/13 14:19
 * @Version 1.0
 * @apiNote :
 */
public abstract class JSONTool {
    public static final ObjectMapper OBJECT_MAPPER = new ObjectMapper();

    public static String toJSON(Object obj) {
        try {
            return OBJECT_MAPPER.writeValueAsString(obj);
        } catch (Exception e) {

            return null;
        }
    }
}

3.在前端页面使用,使用前先引用

<%@taglib uri="com.data.web.view.function" prefix="xf" %>

​ 然后在js中使用即可

var u=${xf:toJSON(cUser)};

​ 也可存入sessionStorage中,对比查看一下,代码如下:

  function setSession(sessionStr, setObj) {
        sessionStorage.removeItem(sessionStr);
        window.sessionStorage.setItem(sessionStr, JSON.stringify(setObj));
    }
    var cUser = "${cUser}";
    var u=${xf:toJSON(cUser)};
    function setUser2Session() {
        setSession("cUser", cUser);
        setSession("u", u);
    }
     $(document).ready(function () {
        setUser2Session();
    });

运行后进入页面并按F12,查看

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-grjDZBPU-1626175562530)(C:\Users\19771\AppData\Roaming\Typora\typora-user-images\image-20210713192324770.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jLy3NEW2-1626175562532)(C:\Users\19771\AppData\Roaming\Typora\typora-user-images\image-20210713192344514.png)]

运行后进入页面并按F12,查看

在这里插入图片描述

在这里插入图片描述

标签:function,03,自定义,cUser,xf,JSTL,toJSON,JSONTool
来源: https://blog.csdn.net/qq_38891385/article/details/118708888

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有