list在遍历的时候add了报java.util.ConcurrentModificationException
List<Criterion> list = criteria.getCriterions();
Iterator<Criterion> iter = list.iterator();
while(iter.hasNext()){
Criterion criterion = iter.next();
if ( criterion instanceof SingleValueFilterCriterion){
SingleValueFilterCriterion filter = (SingleValueFilterCriterion)criterion;
if ((null == filter.getDataType()) || (!filter.getDataType().getName().toString().equals("Date")))
continue;
if (filter.getExpression().startsWith("<")){
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");
// SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM d HH:mm:ss 'CST' yyyy", Locale.ENGLISH);
if(filter.getExpression().length()==11){
String stingfilter0= filter.getExpression();
String stringfilter1=stingfilter0.replaceAll("<", "");
Date datefilter1= sdf.parse(stringfilter1);
String stringfilter2=sdf.format(new Date(datefilter1.getTime()+24*3600*1000));
StringBuilder sbdate = new StringBuilder();
sbdate.append("<");
sbdate.append(stringfilter2);
filter.setExpression(sbdate.toString());
list.add(filter);
}
}
}
}