zoukankan      html  css  js  c++  java
  • 清除bean中所有非基本数据类型的属性值

    利用beanutils清除javabean中所有非基本数据类型的属性值:

    import com.google.gson.Gson;
    import lombok.Data;
    import org.apache.commons.beanutils.PropertyUtilsBean;
    import java.beans.PropertyDescriptor;
    
    
    @Data
    public class RequestParams {
        private String name;
        private Integer age;
        private int d;
        private byte bt;
        private char c;
        private short sd;
        private long ld;
        private float ft;
        private double db;
        private boolean tag;
    
        /*
        * 设置bean中属性值(基本数据类型,请使用封装类)为null
        */
        public void clear(){
            try {
                PropertyUtilsBean propertyUtilsBean = new PropertyUtilsBean();
                PropertyDescriptor[] descriptors = propertyUtilsBean.getPropertyDescriptors(this);
                for (int i = 0; i < descriptors.length; i++) {
                    String property = descriptors[i].getName();
                    if (!"class".equals(property)) {
                        if(!descriptors[i].getPropertyType().isPrimitive()){
                            propertyUtilsBean.setProperty(this,property,null);
                        }
                    }
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    
        public static void main(String[] args) {
            RequestParams requestParams = new RequestParams();
            Gson gson = new Gson();
            requestParams.setName("gh");
            requestParams.setD(19);
            byte b = 101;
            requestParams.setBt(b);
            requestParams.setC('a');
            short s = 20;
            requestParams.setSd(s);
            requestParams.setLd(19L);
            requestParams.setFt(19.1F);
            requestParams.setDb(19.9);
            requestParams.setTag(false);
            requestParams.clear();
            System.out.println(gson.toJson(requestParams));
    
        }
    }
  • 相关阅读:
    IP通信基础学习第八周
    IP通信基础学习第七周(下)
    IP通信基础学习第七周(上)
    IP通信基础学习第六周(下)
    mysql 笔记
    一个不错的MYSQL数据库备份类,PHP版,一个文件,精简版
    Linux下apache日志(按日期存放)分析与状态查看方法
    呵呵
    docker-compose常用命令
    mysql 数据备份
  • 原文地址:https://www.cnblogs.com/Eric-zhao/p/9728962.html
Copyright © 2011-2022 走看看