当前位置: 首页 > news >正文

Java 判断实体类对象的全部属性是否空

public boolean checkObjAllFieldsIsNull(Object object) {// 如果对象为null直接返回trueif (null == object) {return true;}try {// 挨个获取对象属性值for (Field f : object.getClass().getDeclaredFields()) {f.setAccessible(true);// 如果有一个属性值不为null,且值不是空字符串,就返回falseif (f.get(object) != null && StringUtils.isNotBlank(f.get(object).toString())) {return false;}}} catch (Exception e) {e.printStackTrace();}return true;}

如果持久层用的是 MyBatis-Plus 框架,上面的代码会一直返回 false,这时候需要先在需要判断的实力类对象中加入 serialVersionUID 全局参数

private static final long serialVersionUID = 1L;
再使用下面的代码:

import java.lang.reflect.Field;/*** 判断实体类对象的属性值是否全部为空* @param object* @return*/
public boolean checkObjAllFieldsIsNull(Object object) {// 如果对象为null直接返回trueif (null == object) {return true;}try {// 挨个获取对象属性值for (Field f : object.getClass().getDeclaredFields()) {f.setAccessible(true);// 如果属性名不为serialVersionUID,有一个属性值不为null,且值不是空字符串,就返回falseif (!"serialVersionUID".equals(f.getName()) &&f.get(object) != null && StringUtils.isNotBlank(f.get(object).toString())) {return false;}}} catch (Exception e) {e.printStackTrace();}return true;}
http://www.lryc.cn/news/276246.html

相关文章:

  • Vue3-44-Pinia- 安装步骤
  • L1-005 考试座位号(Java)
  • HDFS概述
  • Hive 的 安装与部署
  • 【HBase】——优化
  • 什么是跨域以及怎么处理跨域问题
  • 【Linux Shell】11. 输入/输出 重定向
  • 数据库-简单表的操作And查看表的结构
  • <设计模式修炼>模板方法模式的使用场景和注意事项学习
  • android 分享文件
  • UE5 C++(十一)— 碰撞检测
  • 时序数据库InfluxDB、TimeScaleDB简介
  • 复试 || 就业day05(2024.01.08)项目一
  • 基于商品列表的拖拽排序后端实现
  • 小游戏实战丨基于PyGame的贪吃蛇小游戏
  • AOP(面向切面编程)基于XML方式配置
  • 多线程的概念
  • DeepPurpose 生物化学深度学习库;蛋白靶点小分子药物对接亲和力预测虚拟筛选
  • Java实现责任链模式
  • rabbitmq延时队列相关配置
  • 【工具】推荐一个好用的代码画图工具
  • Leetcode14-判断句子是否为全字母句(1832)
  • HTTP和TCP代理原理及实现,主要是理解
  • MySQL中的连接池
  • css计时器 animation实现计时器延时器
  • 【win11 绕过TPM CPU硬件限制安装】
  • k8s的yaml文件中的kind类型都有哪些?(清单版本)
  • Jetpack Room使用
  • HarmonyOS应用开发之ArkTS语言学习记录
  • windows 下 mongodb6.0 导入导出json文件