`
小小酥ol
  • 浏览: 7104 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

java 比较两个对象是否一致

    博客分类:
  • java
阅读更多

 /**

     * 比较对象值是否发生了改变

     * @param obj1  

     * @param obj2

     * @return

     */

    public static boolean contrastObj(Object obj1, Object obj2) {

        boolean isEquals = true;

        if (obj1 instanceof objec && obj2 instanceof objec ) {

            objec pojo1 = (objec ) obj1;

            objec  pojo2 = (objec ) obj2;

            List<String> textList = new ArrayList<String>();

            

                Class<? extends objec > clazz = pojo1.getClass();

                Field[] fields = pojo1.getClass().getDeclaredFields();

                int count = 0 ;

                for (Field field : fields) {

                    PropertyDescriptor pd;

                 

                    try {

                        pd = new PropertyDescriptor(field.getName(), clazz);

                       if(count==72){

                           

                       }

               

                    Method getMethod = pd.getReadMethod();

                    Object o1 = getMethod.invoke(pojo1);

                    Object o2 = getMethod.invoke(pojo2);

                    count++;

                    if(o1==null && o2 == null){

                        continue;

                    }

                    if(o1.equals(0) && o2.equals(0)){

                        continue;

                    }

                    if (!o1.toString().equals(o2.toString())) {

                        isEquals = false;

                        textList.add(getMethod.getName() + ":" + "false");

                    } else {

                        textList.add(getMethod.getName() + ":" + "true");

                    }

                    } catch (Exception e) {

                    }

                }

            

        }

        return isEquals;

    }

分享到:
评论

相关推荐

    java比较两个mysql数据库中的表信息差异

    一个简单JAVA 小工程进行两个MYSQL数据库对象的比较,导入eclipse中,修改jdbc.properties文件中的JDBC信息,然后直接运行action包类中的main方法,生成EXCEL,excel中包含表,表中列,索引,函数过程差异比对结果。...

    java 判断两个网址的主机名是否一样

    在Java编程中,判断两个网址的主机名是否相同是一个常见的任务,这通常涉及到网络编程和URL对象的使用。下面我们将详细探讨如何实现这个功能,并深入理解相关知识点。 首先,URL(Uniform Resource Locator)是统一...

    Java比较两个mysql数据库表结构的差异

    一个简单JAVA 小工程进行两个MYSQL数据库对象的比较,导入eclipse中,修改jdbc.properties文件中的JDBC信息,然后直接运行action包类中的main方法,生成EXCEL,excel中包含表,表中列,索引,函数过程差异比对结果。...

    比较两个集合是否相同(比较两个List内容是否相同)

    比较两个集合是否相同(比较两个List内容是否相同) 利用Java反射机制,获取到字段名、方法名、字段值,进行逐个比较,此处本人封装好了工具类,接收的是泛型,调用者只需要传入两个实体List即可进行比较,返回true...

    java 判断两个对象是否为同一个对象实例代码

    在Java中,所有对象都继承自`Object`类,`Object`类提供了默认的`equals()`方法,它默认仅比较两个对象的引用是否相等,与`==`的行为一致。然而,当我们想要比较两个对象的属性值是否相等时,我们需要重写`equals()`...

    对象字段变化比较工具

    1. **对象序列化与反序列化**:为了比较两个对象,工具可能需要先将它们转换成一致的数据格式,如JSON字符串,然后再进行比较。这样可以忽略掉对象的实例标识(内存地址)差异,专注于字段值的对比。 2. **递归比较...

    java不同对象及集合的多次复制

    这样,两个对象完全独立,互不影响。 2. **Java中的对象复制方法** - **clone()方法**:Java的Object类提供了一个`clone()`方法,但默认实现是浅拷贝。如果需要深拷贝,需要在每个需要复制的对象类中实现`...

    MyBatisDemo && JAVA把一个对象的全部属性复制到另一个相同的对象

    这篇博文“MyBatisDemo && JAVA把一个对象的全部属性复制到另一个相同的对象”探讨的是如何在Java编程中实现对象属性的深度复制。MyBatis是一个流行的Java持久层框架,它简化了数据库操作,而对象复制则是处理业务...

    比较两个MYSQL数据库中的对象差异

    一个简单JAVA 小工程进行两个MYSQL数据库对象的比较,导入eclipse中,修改jdbc.properties文件中的JDBC信息,然后直接运行action类中的main方法,生成EXCEL,excel中包含表,表中列,索引,函数过程差异比对结果。...

    java比较两个list是否相同equals的代码详解

    Java比较两个List是否相同的equals方法详解 在 Java 编程中,比较两个 List 是否相同是一个非常重要的操作。今天,我们将探索 Java 中比较两个 List 是否相同的 equals 方法的实现。 首先,让我们了解一下为什么...

    java实现两个mysql同步主库的数据

    下面我们将深入探讨如何使用Java实现两个MySQL数据库之间的数据同步,以及涉及的相关知识点。 首先,我们需要理解MySQL的复制原理。MySQL的主从复制是基于日志的,主库上的所有更改都会被记录到二进制日志(binlog...

    JAVA流比较两个TXT文件数据

    当我们需要比较两个TXT文件的数据时,可以利用Java的流API来实现。下面将详细介绍如何利用JAVA流、FileReader和BufferedReader来实现这个功能。 首先,我们需要理解什么是JAVA流。在Java中,流是一组有序的数据序列...

    Java比较两个List的值是否相等的方法

    在Java编程中,比较两个List的值是否相等是一个常见的需求,特别是在处理数据集合时。这里我们探讨一种方法,用于判断两个List是否包含相同的元素,不论它们的顺序如何。这个方法的关键在于比较List的大小以及排序后...

    Java Excel比较代码 poi

    对比Excel表格,首先需要加载两个待比较的文件,创建对应的`Workbook`对象。接着,遍历每个工作表,对工作表中的每一行进行比较。可以使用`Sheet.getLastRowNum()`方法获取最后一行的索引,然后遍历从第一行到最后一...

    java获取两个时间的相隔时间,包括年、月、日、时、分、秒

    在这个类中,可能包含了各种方法来计算两个`java.util.Date`对象之间的时间差,包括年、月、日、时、分和秒。以下是一些关于如何在Java中处理此类问题的知识点: 1. **日期和时间类**:在Java中,`java.util.Date` ...

    12-Java面对对象高级(中)

    首先,**多态性**是面向对象编程的三大特性之一,其余两个是封装和继承。多态性允许我们使用一个父类型的引用指向子类型对象,从而实现更灵活的代码编写。在Java中,多态性的主要体现是方法重写和重载。方法重写...

    java计算同一个list中是否有相同的值

    在 Java 编程中,判断一个 `List` 中是否存在重复元素是一项常见的需求。特别是在数据处理、验证或分析等场景中,确保数据的唯一性对于维持数据完整性至关重要。 #### 核心概念解析 在给定的代码片段中,作者提供...

    java面向对象程序设计课题设计报告短信发送.doc

    例如,创建一个名为`Message`的类,包含`messageContent`(短信内容)和`receiverNumber`(接收者电话号码)这两个属性,以及`send()`(发送短信)和`clearText()`(清除文本)这两个方法。 2. **继承**:继承允许...

    java中Object对象String对象的解析.pdf

    该方法用于比较两个对象是否相等。对于基本数据类型,equals() 方法比较的是左右两边的值是否相同;对于引用类型,equals() 方法比较的是引用是否指向同一个对象,即引用的地址是否一致。 String 对象是 Java 中一...

    Java如何优雅地判断对象是否为空

    这是因为`null`的`List`与空的`List`(即没有任何元素的`List`)是两个不同的概念。使用`list != null && list.size() &gt; 0`可以确保`List`已经实例化且包含至少一个元素。Hutool的`CollUtil.isEmpty(list)`方法也能...

Global site tag (gtag.js) - Google Analytics