private static long reflectSub(List<AnnotationDemo> list){
		long start=new Date().getTime();
		int i=0;
		for(AnnotationDemo o:list){
			Class classType=o.getClass();
			Field[] fields=classType.getDeclaredFields();
			for(Field field:fields){
				if(field.isAnnotationPresent(Length.class)&&String.class.equals(field.getType())){
					Length length=field.getAnnotation(Length.class);
					String fieldName=field.getName();   
		            String stringLetter=fieldName.substring(0, 1).toUpperCase();   
		               
		            //获得相应属性的getXXX和setXXX方法名称   
		            String getName="get"+stringLetter+fieldName.substring(1);   
		            String setName="set"+stringLetter+fieldName.substring(1);
		            try{
		            //获取相应的方法   
		            Method getMethod=classType.getMethod(getName, new Class[]{});   
		            Method setMethod=classType.getMethod(setName, new Class[]{field.getType()});   
		               
		            //调用getXXX()方法   
		            String value=(String)getMethod.invoke(o, new Object[]{});   
		            if(value!=null&&value.length()>length.value()){
			            //调用setXXX()方法   
			            setMethod.invoke(o,new Object[]{value.substring(0, length.value())}); 
			            i++;
		            }
		            }
		            catch(Exception e){
		            	e.printStackTrace();
		            }
				}
			}
		}
		System.out.println(i);
		return new Date().getTime()-start;
	}