1、注意while与do while的灵活应用
2、在一台服务器上,同步资源的方法上可以加同步锁,强占资源,其他请求等待。多台服务器不可以,容易卡死。
3、
$scope.$watch('paginationConf.currentPage + paginationConf.itemsPerPage', function(newValue, oldValue){
if(newValue!=oldValue){
getList();
}
});
页面第一次刷新的时候,newValue与oldValu值不会变,则监听是不会执行。
4、获取手机6位随机码
String.valueOf((int)((Math.random()*9+1)*100000))
String[] beforeShuffle = new String[] { "0","1","2", "3", "4", "5", "6", "7", "8", "9"};
List list = Arrays.asList(beforeShuffle);
Collections.shuffle(list);
StringBuilder sb = new StringBuilder();
for (int i = 0; i < list.size(); i++) {
sb.append(list.get(i));
}
String smsVerify = sb.toString().substring(3, 9);
4、Calendar的应用
1)获取某一时间点当天 00:00:00
11) Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
Date zero = calendar.getTime();
22) long current = System.currentTimeMillis(); long zero = current/(1000*3600*24)*(1000*3600*24) - TimeZone.getDefault().getRawOffset();
/** * 获取当年的第一天 * @return */ public Date getCurrYearFirst(){ Calendar currCal=Calendar.getInstance(); int currentYear = currCal.get(Calendar.YEAR); return getYearFirst(currentYear); } /** * 获取当年的最后一天 * @return */ public Date getCurrYearLast(){ Calendar currCal=Calendar.getInstance(); int currentYear = currCal.get(Calendar.YEAR); return getYearLast(currentYear); } /** * 获取某年第一天日期 * @param year 年份 * @return Date */ public Date getYearFirst(int year){ Calendar calendar = Calendar.getInstance(); calendar.clear(); calendar.set(Calendar.YEAR, year); Date currYearFirst = calendar.getTime(); return currYearFirst; } /** * 获取某年第一天日期 * @return Date */ public Long getYearFirstTime(int year){ Calendar calendar = Calendar.getInstance(); calendar.clear(); calendar.set(Calendar.YEAR, year); return calendar.getTimeInMillis(); } /** * 获取某年最后一天日期 * @param year 年份 * @return Date */ public Date getYearLast(int year){ Calendar calendar = Calendar.getInstance(); calendar.clear(); calendar.set(Calendar.YEAR, year); calendar.roll(Calendar.DAY_OF_YEAR, -1); Date currYearLast = calendar.getTime(); return currYearLast; } /** * 获取某一时间戳的年份 * @param time 时间戳 * @return */ public Integer getYerar(Long time){ Calendar calendar=Calendar.getInstance(); calendar.setTimeInMillis(time); return calendar.get(Calendar.YEAR); } /** * 获取当前年 * @return */ public Integer getCurrYear(){ Calendar currCal=Calendar.getInstance(); return currCal.get(Calendar.YEAR); } /** * 某一时间戳 加上 n 年 ,返回新的时间最后一秒的时间戳 * @param validTime * @return */ public Long getAddNYearLastDay(Long validTime){ Calendar calendar = new GregorianCalendar(); calendar.setTimeInMillis(validTime); calendar.roll(Calendar.DAY_OF_YEAR, 0); calendar.add(Calendar.SECOND,-1); return calendar.getTimeInMillis(); } /** * 某一时间戳 加上 n 年 ,返回新的时间第一秒的时间戳 * @param validTime * @param n * @return */ public Long getAddNYear(Long validTime,Integer n){ long zero = validTime/(1000*3600*24)*(1000*3600*24) - TimeZone.getDefault().getRawOffset(); Calendar calendar = new GregorianCalendar(); calendar.setTimeInMillis(zero); //把日期往后增加一年.整数往后推,负数往前移动 calendar.add(Calendar.YEAR, n); return calendar.getTimeInMillis(); }