Java 判断Object对象的所有属性值是否为空。

深蓝计划 专栏收录该内容
91 篇文章 0 订阅

问题:实例化一个对象,对象特定的属性值存在(主键),其他的属性值全部为null。

要求:编写一个属性验证工具类,排除特性属性返回Boolean 标识,判断对象其他的属性是否为null 值。

package ****;

import java.lang.reflect.Field;
import java.util.List;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class ObjectFildValidate {
	
	public static final Logger logger = LoggerFactory.getLogger(ObjectFildValidate.class);
	/**
	 * 
	 * @Title: validateFild   
	 * @Description: 检查指定对象的属性值是否为空,排除指定的属性值   
	 * @param: @param object
	 * @param: @param exclFild
	 * @param: @return      
	 * @return: boolean      
	 * @throws
	 */
	public static boolean validateFild(Object object, List exclFild){
		boolean target = false;
		for (Field f : object.getClass().getDeclaredFields()) {
		    f.setAccessible(true);
		    try {
		    	String name = f.getName();
		    	// 判断属性名称是否在排除属性值中
		    	if(!exclFild.contains(name)){
		    		if (f.get(object) != null) { //判断字段是否为空,并且对象属性中的基本都会转为对象类型来判断
						   target = true;
						   break;
					}
		    	}
			} catch (IllegalArgumentException e) {
				target = false;
				logger.error("对象属性解析异常" + e.getMessage());
				return target;
			} catch (IllegalAccessException e) {
				// TODO Auto-generated catch block
				target = false;
				logger.error("对象属性解析异常" + e.getMessage());
				return target;
			}
		}
		
		return target;
	}

}

 

  • 0
    点赞
  • 0
    评论
  • 2
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: Age of Ai 设计师:meimeiellie 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值