日期:2014-05-18  浏览次数:20734 次

jsp中如何获取非本机的准确时间
本机时间有可能会不准,我想用java技术获取区时或北京时间之类的准确时间要怎么做?就像QQ聊天时间那样的.

------解决方案--------------------

------解决方案--------------------
qq获取的是本机的,java中可以获取你项目 所在的服务器的时间 ,如果你自己计算机上测试可能是不准确的。 最好是一台计算机上 安装项目 其他计算机测试 


(一)yyyy-MM-dd HH:mm:ss 格式的 Date 类型
public Date getDateTime() {

dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date1 = new Date();

String date = dateFormat.format(date1); 
Date datep = Timestamp.valueOf(date);

return datep;
}
(二)String类型 yyyy-MM-dd 格式
public String getDate() {

dateFormat = new SimpleDateFormat("yyyy-MM-dd");
Date date1 = new Date();
String date = dateFormat.format(date1);
String[] split=date.split("-");
date=split[0].trim()+"-"+Integer.parseInt(split[1].trim())*1+"-"+Integer.parseInt(split[2].trim())*1;

//Date datep = Timestamp.valueOf(date);
return date;
}

(三)// 获取当前系统的时分秒
public String getTime() {
dateFormat = new SimpleDateFormat(" HH:mm:ss");
Date date1 = new Date();
String date = dateFormat.format(date1);

return date;
}
public String getTimeHh() {
dateFormat = new SimpleDateFormat("HH");
Date date1 = new Date();
String date = dateFormat.format(date1);

return date;
} public String getTimeMm() {
dateFormat = new SimpleDateFormat("mm");
Date date1 = new Date();
String date = dateFormat.format(date1);

return date;
}

public String getTimeSs() {
dateFormat = new SimpleDateFormat("ss");
Date date1 = new Date();
String date = dateFormat.format(date1);

return date;
}

// 获取当前系统时间的年份
public int getYera() {

int year = c.get(Calendar.YEAR);
return year;
}

// 获取当前系统时间的月份
public int getMonth() {

int month = c.get(Calendar.MONTH) + 1;
return month;
}

// 获取当前系统时间的日期

public int getDtata() {

int data = c.get(Calendar.DATE);
return data;
}
------解决方案--------------------
那必须保证服务器能够连得上改服务器,即在外网!
是曾见过改网站,好像是××北京时间××什么的,google一下
------解决方案--------------------
可以去搜索一下“国家授时中心”,专门是授时服务的。