实体list转JSONArray对Date数据处理「建议收藏」

实体list转JSONArray对Date数据处理「建议收藏」直接上代码importnet.sf.json.JSONArray;importnet.sf.json.JsonConfig;importnet.sf.json.processors.JsonValueProcessor;importjava.math.BigDecimal;importjava.text.SimpleDateFormat;importjava.util.ArrayList;importjava.util.Date;importjava.util.List;

大家好,又见面了,我是你们的朋友全栈君。

直接上代码

import net.sf.json.JSONArray;
import net.sf.json.JsonConfig;
import net.sf.json.processors.JsonValueProcessor;
 
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
 
public class JSONDemo01 { 
   
    public static void main(String[] args) { 
   
        List<ZuLinVo> list = new ArrayList<>();
        ZuLinVo zuLinVo = new ZuLinVo("test","330100",new BigDecimal("142.24"),new Date(),new Date());
        list.add(zuLinVo);
        ZuLinVo zuLinVo1 = new ZuLinVo("test","330100",new BigDecimal("142.24"),new Date(),null);
        list.add(zuLinVo1);
        JsonConfig config = new JsonConfig();
        config.registerJsonValueProcessor(Date.class, new JsonValueProcessor() { 
   
            //自定义日期格式
            SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            @Override
            //处理单个Date对象
            public Object processObjectValue(String propertyName, Object date,JsonConfig config) { 
   
                if(date!=null){ 
   
                    return simpleDateFormat.format(date);
                }else{ 
   
                    return null;
                }
            }
            @Override
            //处理数组中的Date对象
            public Object processArrayValue(Object date, JsonConfig config) { 
   
                if(date!=null){ 
   
                    return simpleDateFormat.format(date);
                }else{ 
   
                    return null;
                }
            }
        });
        JSONArray array = JSONArray.fromObject(list,config);
        System.out.println(array.toString());
    }
}

创建实体类

import java.math.BigDecimal;
import java.util.Date;
 
public class ZuLinVo { 
   
    private String fwzl;//房屋坐落
    private String sscq;//所属城区
    private BigDecimal mj;//面积
    private Date zlksrq;//租赁开始日期
    private Date zljsrq;//租赁结束日期
 
    public String getFwzl() { 
   
        return fwzl;
    }
    public void setFwzl(String fwzl) { 
   
        this.fwzl = fwzl;
    }
    public String getSscq() { 
   
        return sscq;
    }
    public void setSscq(String sscq) { 
   
        this.sscq = sscq;
    }
    public BigDecimal getMj() { 
   
        return mj;
    }
    public void setMj(BigDecimal mj) { 
   
        this.mj = mj;
    }
    public Date getZlksrq() { 
   
        return zlksrq;
    }
    public void setZlksrq(Date zlksrq) { 
   
        this.zlksrq = zlksrq;
    }
    public Date getZljsrq() { 
   
        return zljsrq;
    }
    public void setZljsrq(Date zljsrq) { 
   
        this.zljsrq = zljsrq;
    }
    public ZuLinVo(String fwzl, String sscq, BigDecimal mj, Date zlksrq, Date zljsrq) { 
   
        this.fwzl = fwzl;
        this.sscq = sscq;
        this.mj = mj;
        this.zlksrq = zlksrq;
        this.zljsrq = zljsrq;
    }
}

代码执行控制台数据:实体类中的字段类型为date时进行处理,为空直接返回null,有值进行格式处理
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/149446.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • [LeetCode] 046: Longest Substring Without Repeating Characters[通俗易懂]

    [LeetCode] 046: Longest Substring Without Repeating Characters[通俗易懂][Problem]Givenastring,findthelengthofthelongestsubstringwithoutrepeatingcharacters.Forexample,thelongestsubstringwithoutrepeatinglettersfor”abcabcbb”is”abc”,whichthelength

    2022年9月19日
    2
  • 初中生学java行吗_初中生学Java开发有前景吗?「建议收藏」

    初中生学java行吗_初中生学Java开发有前景吗?「建议收藏」初中生学Java开发有前景吗?学Java手机开发有什么优势?Java手机开发工程师前景好吗?据北大青鸟华工学校的专业老师分析。作为唯一在互联网上开发的语言,Java平台以其移动性、安全性和开放性受到追捧。据IDC预计,自2001年起的其后5年内,采用Java的IT产品的价值将翻番,在2006年将达到4.53亿美元,年增长率为14.9%。截止到2003年5月,Java注册开发商超过300万人,对JR…

    2022年7月26日
    5
  • path是什么意思啊_globalmapper转换投影

    path是什么意思啊_globalmapper转换投影投影投影是JMESPath的关键特性之一。它允许您将表达式应用于元素集合。有五种投影:列表投影切片投影对象投影展平投影过滤投影处理投影需要注意的点投影分为两个步骤。左侧(LHS)创建一

    2022年7月31日
    6
  • 说说你对servlet 的理解或者 servlet 是什么?「建议收藏」

    说说你对servlet 的理解或者 servlet 是什么?「建议收藏」说说你对servlet的理解或者servlet是什么?Servlet(ServletApplet),全称JavaServlet,是用Java编写的服务器端程序。而这些Servlet都要实现Servlet这个接口。其主要功能在于交互式的浏览和修改数据,生成动态Web内容。Servlet运行于支持Java的应用服务器中。 HttpServlet重写doGet和doPost

    2022年6月16日
    27
  • Anaconda和Pycharm安装和配置教程[通俗易懂]

    Anaconda和Pycharm安装和配置教程[通俗易懂]1、下载Anaconda2(最好选Python2.7的,兼容性好点)在官网下载:https://www.continuum.io/downloads新路径https://www.anaconda.com/distribution/2、安装Pycharm(顺便激活成功教程,不需要激活成功教程工具)默认下一步,安装好就OK了。手动配置Pycharm所用解释器3、打开“文件”—“设置”,它会自动检测…

    2022年8月27日
    7
  • 紫光同创国产FPGA学习之Power Calculator

    紫光同创国产FPGA学习之Power Calculator紫光同创里面的,芯片功耗计算。没看过,没用过。有兴趣瞄一下。我又不用再电池行业,对电源没啥要求。没用经验之谈,拷贝参考书。一、总体介绍  (一)PangoPowerCalculator总体介绍PangoPowerCalculator是用来计算用户设计产生功耗的软件,简称PPC,是集成在PDS中的一个组件。用户在完成design设计,经过综合、map、布局布线后,可以使用P…

    2022年8月30日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号