본문 바로가기
  • A space that records me :)
Language/JAVA

[JAVA] 두개 Object의 값 비교하기

by yjkim_97 2020. 11. 19.

Object vs Object , Map vs Map

// 두개의 object비교 -> map으로 전환후 map 비교
public static Map<String, String> compareObject(Object obj1, Object obj2)
{
    if(ObjectUtils.isEmpty(obj1) || ObjectUtils.isEmpty(obj2) || obj1.getClass() != obj2.getClass()) {
    	return null;
    }
    return CommonUtils.compareMap(MapToModel.converObjectToMap(obj1), MapToModel.converObjectToMap(obj2));
}
    
// 두개의 map 비교
 public static Map<String, String> compareMap(Map<String, String> map1, Map<String, String> map2)
 {
    // map2를 map1과 비교해서 다른 (map2)값을 리턴한다.
    if(ObjectUtils.isEmpty(map1) || ObjectUtils.isEmpty(map2)) {
   		 return null;
    }

    Map<String, String> result = new HashMap<String, String>();
    for(Map.Entry<String, String> entry1 : map1.entrySet())
    {
        String key1 = entry1.getKey();
        if(!entry1.getValue().equals(map2.get(key1))) 
        {    				
        	result.put(key1, map2.get(key1));
        }
    }

    return result;
}

Object를 Map으로 변환하는 메소드 참고

2020/11/19 - [IT story/JAVA] - [JAVA] Map to Object, Object to Map