import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class DateUtil {
public static void main(String[] args) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar cal = Calendar.getInstance();
cal.setFirstDayOfWeek(Calendar.MONDAY);// 设置一个星期的第一天,按中国的习惯一个星期的第一天是星期一
int dayWeek = cal.get(Calendar.DAY_OF_WEEK);// 获得当前日期是一个星期的第几天
if(dayWeek==1){
dayWeek = 8;
}
System.out.println("要计算日期为:" + sdf.format(cal.getTime())); // 输出要计算日期
cal.add(Calendar.DATE, cal.getFirstDayOfWeek() - dayWeek);// 根据日历的规则,给当前日期减去星期几与一个星期第一天的差值
Date mondayDate = cal.getTime();
String weekBegin = sdf.format(mondayDate);
System.out.println("所在周星期一的日期:" + weekBegin);
cal.add(Calendar.DATE, 4 +cal.getFirstDayOfWeek());
Date sundayDate = cal.getTime();
String weekEnd = sdf.format(sundayDate);
System.out.println("所在周星期日的日期:" + weekEnd);
Calendar cal1=Calendar.getInstance();
cal1.setTime(mondayDate);
cal1.add(Calendar.DATE, -7);
cal1.add(Calendar.DATE, -1);
System.out.println(sdf.format(cal1.getTime()));
String sql = "SELECT COUNT(DISTINCT studentcode) as a from gt_testing WHERE testingtime BETWEEN " +weekBegin+
" and " +weekEnd+
" ;";
System.out.println(sql);
}
}