parent
1e83257581
commit
f05c26d52b
2 changed files with 87 additions and 1 deletions
@ -0,0 +1,86 @@ |
|||||||
|
package org.jeecg.common.util; |
||||||
|
|
||||||
|
import org.springframework.util.StringUtils; |
||||||
|
|
||||||
|
import java.beans.PropertyEditorSupport; |
||||||
|
import java.sql.Timestamp; |
||||||
|
import java.text.DateFormat; |
||||||
|
import java.text.ParseException; |
||||||
|
import java.text.SimpleDateFormat; |
||||||
|
import java.util.Calendar; |
||||||
|
import java.util.Date; |
||||||
|
import java.util.GregorianCalendar; |
||||||
|
import java.util.Random; |
||||||
|
|
||||||
|
/** |
||||||
|
* 定时类使用的方法 |
||||||
|
*/ |
||||||
|
public class XJobUtils{ |
||||||
|
|
||||||
|
|
||||||
|
/** |
||||||
|
* 获取间隔时间 |
||||||
|
* @param start_Date |
||||||
|
* @return |
||||||
|
*/ |
||||||
|
public static Date randomIntervaltime(Date start_Date,int s,int e) |
||||||
|
{ |
||||||
|
//将时间转为long类型
|
||||||
|
long start=start_Date.getTime(); |
||||||
|
//获取30-180秒对应毫秒
|
||||||
|
long intervalTime=randInt(s*60,s*60)*1000; |
||||||
|
//总共花费时长
|
||||||
|
long timeMillis =start+intervalTime; |
||||||
|
|
||||||
|
return longToDate(timeMillis); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* 其实这是基于一个公式 如果要取一个范围在[min,max]之间的随机整数那么公式如下 |
||||||
|
* @param min |
||||||
|
* @param max |
||||||
|
* @return |
||||||
|
*/ |
||||||
|
public static int randInt(int min,int max) |
||||||
|
{ |
||||||
|
Random rand = new Random(); |
||||||
|
// nextInt通常不包含顶部值,因此加上1使其包含
|
||||||
|
int randomNum = rand.nextInt((max - min) + 1) + min; |
||||||
|
return randomNum; |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//将long转为日期
|
||||||
|
public static Date longToDate(long lo) |
||||||
|
{ |
||||||
|
SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
||||||
|
//long转Date
|
||||||
|
Date date = null; |
||||||
|
try { |
||||||
|
date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(sd.format(new Date(lo))); |
||||||
|
} catch (ParseException e) { |
||||||
|
e.printStackTrace(); |
||||||
|
} |
||||||
|
return date; |
||||||
|
} |
||||||
|
|
||||||
|
//间隔时间(秒)
|
||||||
|
public static long dateToLong(Date s,Date e) |
||||||
|
{ |
||||||
|
|
||||||
|
long sl=s.getTime(); |
||||||
|
long el=e.getTime(); |
||||||
|
long r=el-sl; |
||||||
|
return (el-sl)/1000; |
||||||
|
} |
||||||
|
|
||||||
|
//随机暂停s-e分钟()
|
||||||
|
public static void sleepTime(int s ,int e) throws InterruptedException { |
||||||
|
|
||||||
|
Thread.sleep(randInt(60*1000*s,60*1000*e)); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
} |
Loading…
Reference in new issue