code: public static <T> void preHandleInsert(T t) {
  		if(t == null) {
  			return;
  		}
  		List<Field> fields = DOInfoReader.getColumns(t.getClass());
  		if(fields.isEmpty()) {
  			return;
  		}
  		
  		for(Field field : fields) {
  			Column column = field.getAnnotation(Column.class);
  			
  			if(column.softDelete() != null && column.softDelete().length == 2
  					&& !column.softDelete()[0].trim().isEmpty()
  					&& !column.softDelete()[1].trim().isEmpty()) {
  				Object delete = DOInfoReader.getValue(field, t);
  				if(delete == null) {
  					DOInfoReader.setValue(field, t, column.softDelete()[0]);
  				}
  			}
  			
  			if(column.setTimeWhenInsert() && Date.class.isAssignableFrom(field.getType())) {
  				if(DOInfoReader.getValue(field, t) == null) {
  					DOInfoReader.setValue(field, t, new Date());
  				}
  			}
  			
  			if(column.insertDefault() != null && !column.insertDefault().isEmpty()) {
  				if(DOInfoReader.getValue(field, t) == null) {
  					DOInfoReader.setValue(field, t, column.insertDefault());
  				}
  			}
  			
  			if(column.setRandomStringWhenInsert()) {
  				if(DOInfoReader.getValue(field, t) == null) {
  					DOInfoReader.setValue(field, t, 
  							UUID.randomUUID().toString().replace("-", "").substring(0, 32));
  				}
  			}
  
  			if(column.casVersion()) {
  				if(DOInfoReader.getValue(field, t) == null) {
  					DOInfoReader.setValue(field, t, 1);
  				}
  			}
  		}
  	}
docs: 插入前预处理字段值