### Question:
UtilJdbc { public static <T> Map<String, Object> getRowFromObject(T entity) throws IllegalAccessException, InstantiationException, InvocationTargetException { Field[] fields = AnnotationUtils.filterDeepFields(entity.getClass()); Map<String, Object> row = new HashMap<>(); for (Field field : fields) { Method method = Utils.findGetter(field.getName(), entity.getClass()); Object object = method.invoke(entity); if (object != null) { row.put(AnnotationUtils.deepFieldName(field), object); } } return row; }  static T getObjectFromRow(Class<T> classEntity, Map<String, Object> row, DeepJobConfig<T, S> config); static Map<String, Object> getRowFromObject(T entity); static Cells getCellsFromObject(Map<String, Object> row, DeepJobConfig<Cells, T> config); static Map<String, Object> getObjectFromCells(Cells cells);  }### Answer:
@Test public void testGetRowFromObject() throws Exception { MessageTestEntity entity = createMessageTestEntity(); Map<String, Object> row = UtilJdbc.getRowFromObject(entity); assertEquals(row.get("id"), entity.getId()); assertEquals(row.get("message"), entity.getMessage()); assertEquals(row.get("number"), entity.getNumber()); }