「java调整时间的时区」java设置当前时间
本篇文章给大家谈谈java调整时间的时区,以及java设置当前时间对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、关于JAVA时间格式转换问题,涉及时区
- 2、北大青鸟java培训:Java中的时间处理?
- 3、JAVA环境时间调整
- 4、java日期时间15点解析出来是07点怎么办
- 5、java时间转换,带时区的
- 6、java中utc时间怎么转换为本地时间
关于JAVA时间格式转换问题,涉及时区
//我实现一个时钟窗口程序给你了,好让你更容易理解,希望对你有帮助。 import java.awt.*; import java.awt.event.*; import java.util.*; //世界时钟 public class TimerTest { public static void main(String[] args) { new TimerTestFrame("世界时钟"); } } class TimerTestFrame extends Frame { /** * */ private static final long serialVersionUID = 1L; public TimerTestFrame(String s) { super(s); addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { dispose(); System.exit(0); } }); setLayout(new GridLayout(2, 6)); ClockCanvas clk1 = new ClockCanvas("北京", "GMT+8"); // 创建时钟 ClockCanvas clk2 = new ClockCanvas("巴黎", "GMT+2"); ClockCanvas clk3 = new ClockCanvas("华盛顿", "GMT-4"); ClockCanvas clk4 = new ClockCanvas("洛衫矶", "GMT-7"); ClockCanvas clk5 = new ClockCanvas("伦敦", "GMT+1"); ClockCanvas clk6 = new ClockCanvas("芝加哥", "GMT-5"); add(clk1); add(clk2); add(clk3); add(clk4); add(clk5); add(clk6); setSize(500, 350); // 设置框架宽高 setVisible(true); } } class ClockCanvas extends Canvas implements Runnable { /** * */ private static final long serialVersionUID = 1L; private int seconds = 0; private String city; private GregorianCalendar calendar; Thread t; public ClockCanvas(String c, String tz) { city = c; //也可以通过TimeZone.setTimeZone(String n)函数改变时区,n为时区参数名。 calendar = new GregorianCalendar(TimeZone.getTimeZone(tz)); t = new Thread(this); t.start(); setSize(125, 125); // 设置画布大小 setBackground(Color.black); } // 重写父类的方法绘制时钟图形 public void paint(Graphics g) { Graphics2D g2d = (Graphics2D) g; BasicStroke bstroke = new BasicStroke(2.0f); g2d.setStroke(bstroke); g2d.setColor(Color.green); g2d.drawOval(0, 0, 100, 100); bstroke = new BasicStroke(5.0f); g2d.setStroke(bstroke); g2d.drawLine(50, 0, 50, 5); g2d.drawLine(0, 50, 5, 50); g2d.drawLine(50, 95, 50, 98); g2d.drawLine(95, 50, 98, 50); double hourAngle = 2 * Math.PI * (seconds - 3 * 60 * 60) / (12 * 60 * 60); double minuteAngle = 2 * Math.PI * (seconds - 15 * 60) / (60 * 60); double secondAngle = 2 * Math.PI * (seconds - 15) / (60); bstroke = new BasicStroke(5.0f); g2d.setStroke(bstroke); g2d.drawLine(50, 50, 50 + (int) (30 * Math.cos(hourAngle)), 50 + (int) (30 * Math.sin(hourAngle))); bstroke = new BasicStroke(3.0f); g2d.setStroke(bstroke); g2d.drawLine(50, 50, 50 + (int) (40 * Math.cos(minuteAngle)), 50 + (int) (40 * Math.sin(minuteAngle))); bstroke = new BasicStroke(1.0f); g2d.setStroke(bstroke); g2d.drawLine(50, 50, 50 + (int) (45 * Math.cos(secondAngle)), 50 + (int) (45 * Math.sin(secondAngle))); g2d.setColor(Color.red); g2d.drawString(city, 35, 115); } public void timeElapsed() { //new Date()获得当前时间 System.out.println(new Date()); calendar.setTime(new Date()); seconds = calendar.get(Calendar.HOUR) * 60 * 60 + calendar.get(Calendar.MINUTE) * 60 + calendar.get(Calendar.SECOND); } public void run() { try { while (true) { Thread.sleep(300); timeElapsed(); repaint(); } } catch (InterruptedException e) { } } }
北大青鸟java培训:Java中的时间处理?
在Java中,如何获取不同时区的当前时间?你知道这道题的正确答案应该如何回答吗?背后的原理又是什么呢?然后,紧接着,我又提出了以下问题:为什么以下代码无法得到美国时间。
(在东八区的计算机上)接下来,java课程培训机构就围绕这两个问题,来带领读者一起学习一下哪些和Java中的时间有关的概念。
时区前面提到了时区,可能很多读者不知道什么是时区,先来简单介绍一下。
时区是地球上的区域使用同一个时间定义。
以前,人们通过观察太阳的位置(时角)决定时间,这就使得不同经度的地方的时间有所不同(地方时)。
1863年,首次使用时区的概念。
时区通过设立一个区域的标准时间部分地解决了这个问题。
世界各个国家位于地球不同位置上,因此不同国家,特别是东西跨度大的国家日出、日落时间必定有所偏差。
这些偏差就是所谓的时差。
为了照顾到各地区的使用方便,又使其他地方的人容易将本地的时间换算到别的地方时间上去。
有关国际会议决定将地球表面按经线从东到西,划成一个个区域,并且规定相邻区域的时间相差1小时。
在同一区域内的东端和西端的人看到太阳升起的时间最多相差不过1小时。
当人们跨过一个区域,就将自己的时钟校正1小时(向西减1小时,向东加1小时)接下来,本文就围绕这两个问题,来带领读者一起学习一下哪些和Java中的时间有关的概念。
时区前面提到了时区,可能很多读者不知道什么是时区,先来简单介绍一下。
时区是地球上的区域使用同一个时间定义。
以前,人们通过观察太阳的位置(时角)决定时间,这就使得不同经度的地方的时间有所不同(地方时)。
1863年,首次使用时区的概念。
时区通过设立一个区域的标准时间部分地解决了这个问题。
世界各个国家位于地球不同位置上,因此不同国家,特别是东西跨度大的国家日出、日落时间必定有所偏差。
这些偏差就是所谓的时差。
为了照顾到各地区的使用方便,又使其他地方的人容易将本地的时间换算到别的地方时间上去。
有关国际会议决定将地球表面按经线从东到西,划成一个个区域,并且规定相邻区域的时间相差1小时。
在同一区域内的东端和西端的人看到太阳升起的时间最多相差不过1小时。
当人们跨过一个区域,就将自己的时钟校正1小时(向西减1小时,向东加1小时
JAVA环境时间调整
你的这个问题系 系统 JVM的事,可以设置下时区,通过以下的语句:
import java.util.*;
TimeZone tz = TimeZone.getTimeZone("ETC/GMT-8");
TimeZone.setDefault(tz);
//显示Java能识别的系统中所有正确的时区
/**
String[] ids = TimeZone.getAvailableIDs();
for(int i = 0; i ids.length; i++)
System.out.println(ids[i].toString());
*/
我也是复制的 ,你自己看看吧!!
java日期时间15点解析出来是07点怎么办
三种情况
1.java下使用new date()获取的时间会和真实的本地时间相差8小时。
2.本地获取的时间没有错,存入数据库的时候时间相差8小时。
3.数据库时间没有错,获取到了后端,之后返回给前端相差8小时。
原因:
1.new date()调用的是jvm时间,而jvm使用的时间默认是0时区的时间,即:和北京时间将会相差8小时。
2.mybatis将本地的数据传入到mysql数据库服务器的时候,服务器会对数据进行检测,会把date类型的数据自动转换为mysql服务器所对应的时区,即0时区,所以会相差8小时。
3.springboot中对加了@RestController或者@Controller+@ResponseBody注解的方法的返回值默认是Json格式,
所以,对date类型的数据,在返回浏览器端时,会被springboot默认的Jackson框架转换,而Jackson框架默认的时区GMT(相对于中国是少了8小时)。所以最终返回到前端结果是相差8小时。
解决方案:
1.手动设置jvm时间:将时间改为第8时区的时间。
TimeZone.setDefault(TimeZone.getTimeZone("GMT+8"));
2.在apprication.yml文件中配置一下数据库连接信息,url加上:serverTimezone=GMT%2b8。
3.将spring的json构造器的时区改正即可,在application.yml文件中添加。
或者可以使用注解,在entity实体类的date数据上添加注解,那么数据库传回的data数据要转换为json格式的时候就是北京时间了,再次传回到前端的时候,也不会出现时区问题.
java时间转换,带时区的
我假设了你的已知时间类型为Calendar,如果不是你也可以自己改成Date类型,代码如下:
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.TimeZone;
public class Test {
public static void main(String[] args) {
//假如这个是你已知的时间类型
Calendar cal = Calendar.getInstance();
cal.getTimeInMillis();
//北京时区GMT+8
Calendar beijingcal = Calendar.getInstance();
beijingcal.clear();
beijingcal.setTimeZone(TimeZone.getTimeZone("GMT+8"));
beijingcal.setTimeInMillis(cal.getTimeInMillis());
DateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String beijingFormatStr = fmt.format(beijingcal.getTime());
System.out.println(beijingFormatStr);
}
}
java中utc时间怎么转换为本地时间
计算机用的是unix纪元,1970年1月1日 0时0分 UTC(协调世界时 即升级版的格林威治时间)
可以说是英国标准时间。
中国是UTC+8 八区,中国本地时间要在以上标准时间上面加8小时。
反映在java的timemilli毫秒时是,
long china_ts=System.currentTimeMillier()+1000*60*60*8;
但只在不支持Java SE时区的早期版本(比如Java Card,Java ME/MIDP1.0)才需要自己手工加。
现在的java系统本身有时区库,用Calendar/Date类,会自动调整时区。不需要再手动算。按以上加法会画蛇添足。
java调整时间的时区的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java设置当前时间、java调整时间的时区的信息别忘了在本站进行查找喔。