import com.google.common.base.CaseFormat;
import com.google.common.base.Converter;
private static Converter<String, String> converter = CaseFormat.LOWER_CAMEL.converterTo(CaseFormat.LOWER_UNDERSCORE);
/**
* Object转换为Map(实体对象转换成带下划线的map)
* @param obj
* @return
* @throws Exception
*/
public static Map<String,Object> objToMap(Object obj) throws Exception{
Map<String,Object> map = new LinkedHashMap<String, Object>();
Field[] fields = obj.getClass().getDeclaredFields();
for(Field field : fields){
field.setAccessible(true);
Object value = field.get(obj);
if (value != null){
map.put(converter.convert(field.getName()) , value);
}
}
return map;
}