public class MongoDBDataClean {
public static void main(String[] args) throws Exception {
TimerTask task = new TimerTask(){
@Override
public void run() {
clearMongoData();
}
private void clearMongoData() {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println("Start at : "+sdf.format(new Date()));
MongoTemplate mongoTemplate = (MongoTemplate) SpringApplicationContextUtil.getInstance().getBean(
"mongoTemplate");
Query query = new Query();
query.sort().on("_id", Order.ASCENDING);
List<HistoryEntry> list = mongoTemplate.find(query.limit(50000), HistoryEntry.class);
System.out.println("Count end at :"+list.size()+" "+sdf.format(new Date()));
for(int i =0 ; i < list.size() ; i ++){
mongoTemplate.remove(list.get(i));
}
System.out.println("Success end at :"+sdf.format(new Date()));
}
};
Timer timer = new Timer();
long delay = 0;
long intevalPeriod = 60*1000;
timer.scheduleAtFixedRate(task, delay, intevalPeriod);
}
}