code: public static Method getterOrSetter(Class clazz, String fieldName, FieldAccessType methodType)
              throws IntrospectionException {
  
          if (null == fieldName || "".equals(fieldName))
              return null;
  
          BeanInfo beanInfo = Introspector.getBeanInfo(clazz);
          PropertyDescriptor[] props = beanInfo.getPropertyDescriptors();
          for (PropertyDescriptor prop : props) {
              if (fieldName.equals(prop.getName())) {
                  if (FieldAccessType.SETTER == methodType) {
                      return prop.getWriteMethod();
                  }
                  if (FieldAccessType.GETTER == methodType) {
                      return prop.getReadMethod();
                  }
              }
          }
          throw new IntrospectionException("Can not get the getter or setter method");
      }
docs: <p>根据java对象属性{@link Field}获取该属性的getter或setter方法名，
  另对{@link boolean}及{@link Boolean}做了行管处理</p>
  
  @param clazz      操作对象
  @param fieldName  对象属性
  @param methodType 方法类型，getter或setter枚举
  @return getter或setter方法
  @throws IntrospectionException 异常
  @author Crab2Died