java.sql.Date获取系统时间,timestamp去掉毫秒

一、获取系统时间

(方式太多了,只介绍三个)

1.1 java.util.Date
java.util.Date dt = new java.util.Date();
System.out.println(dt);  // yyyy-MM-dd HH:mm:ss时间
System.out.println(dt.getTime());  // 时间戳
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(format.format(dt));  //格式化后的时间

输出:
输出内容

1.2 hutool
System.out.println(Convert.toDate(DateUtil.now()).getTime()); //时间戳
System.out.println(Convert.toDate(DateUtil.now())); //yyyy-MM-dd HH:mm:ss时间

输出:
输出内容

1.3 LocalDateTime
String timeStr1= LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
String timeStr2=LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS"));
System.out.println("当前时间为:"+timeStr1);
System.out.println("当前时间为:"+timeStr2);

输出:
在这里插入图片描述

二、java.util.date 和 java.sql.date互转

2.1 java.util.date 转 java.sql.date
java.util.Date utilDate=new Date();
java.sql.Date sqlDate=new java.sql.Date(utilDate.getTime());
java.util.Date utilDate=new Date();
java.sql.Date sqlDate=new java.sql.Date(utilDate.getTime());
java.sql.Time sTime=new java.sql.Time(utilDate.getTime());
java.sql.Timestamp stp=new java.sql.Timestamp(utilDate.getTime());

这里所有时间日期都可以被SimpleDateFormat格式化format()

SimpleDateFormat f=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
f.format(stp);
f.format(sTime);
f.format(sqlDate);
f.format(utilDate)
java.sql.Date sqlDate=java.sql.Date.valueOf(" 2005-12-12"搜索);
utilDate=new java.util.Date(sqlDate.getTime());

另类取得年月日的方法:

import java.text.SimpleDateFormat;
import java.util.*;
java.util.Date date = new java.util.Date();

如果希望得到YYYYMMDD的格式SimpleDateFormat

sy1=new SimpleDateFormat("yyyyMMDD");
String dateFormat=sy1.format(date);

如果希望分开得到年,月,日SimpleDateFormat

sy=new SimpleDateFormat("yyyy");
SimpleDateFormat sm=new SimpleDateFormat("MM");
SimpleDateFormat sd=new SimpleDateFormat("dd");
String syear=sy.format(date);
String smon=sm.format(date);
String sday=sd.format(date);
2.1.1 转 java.util.date
System.out.println(Convert.toDate(DateUtil.now()).getTime()); //时间戳
System.out.println(Convert.toDate(DateUtil.now())); //yyyy-MM-dd HH:mm:ss时间

输出:
输出内容

2.1.2 转 java.util.Timestamp (yyyy-MM-dd hh:mm:ss)
String timeStr1= LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
String timeStr2=LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS"));
System.out.println("当前时间为:"+timeStr1);
System.out.println("当前时间为:"+timeStr2);
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
java.util.Date date= sdf.parse(timeStr1);//先把字符串转为util.Date对象
java.sql.Timestamp ts= new java.sql.Timestamp(date.getTime());//再转换为sql.Date对象
System.out.println("当前时间为:"+ts);

结果:
在这里插入图片描述
可以看到 毫秒仍然存在.0

2.1.2 转 java.util.Timestamp 去掉毫秒
 //获取当前系统时间
Timestamp date=new Timestamp(System.currentTimeMillis());
//定义格式,不显示毫秒
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//将当前系统时间转换为不显示毫秒情况,保存为string类型在dateNow中
String dateNow= df.format(date);
//控制台显示dateNow的值
System.out.println("系统时间:"+dateNow);

结果:
![在这里插入图片描述](https://img-blog.csdnimg.cn/1c2b7619711f4e31bab4f8d9a47a1226.png

2.2 java.sql.date 转 java.util.date
java.sql.Date date=new java.sql.Date();
java.util.Date d=new java.util.Date (date.getTime()); 

输出:
输出内容

  • 4
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值