Main.java Source code

Java tutorial

Introduction

Here is the source code for Main.java

Source

//package com.java2s;
//License from project: Apache License 

import java.lang.reflect.Method;
import java.lang.reflect.Modifier;

import java.util.HashMap;

import java.util.Map;

public class Main {
    /**
     * find all getter and is method and return the value by map.
     */
    public static Map<String, Object> getProperties(Object bean) {
        Map<String, Object> map = new HashMap<>();
        for (Method method : bean.getClass().getMethods()) {
            String name = method.getName();
            if (((name.length() > 3 && name.startsWith("get")) || (name.length() > 2 && name.startsWith("is")))
                    && Modifier.isPublic(method.getModifiers()) && method.getParameterTypes().length == 0
                    && method.getDeclaringClass() != Object.class) {
                int i = name.startsWith("get") ? 3 : 2;
                String key = name.substring(i, i + 1).toLowerCase() + name.substring(i + 1);
                try {
                    map.put(key, method.invoke(bean, new Object[0]));
                } catch (Exception e) {
                }
            }
        }
        return map;
    }
}