java中yyyy-MM-dd HH:mm:ss类型转换成long类型

本文总结了在开发过程中遇到的几个关键问题,并提供了相应的解决方法。包括HTML id命名规范、控制器与JSP页面数据传输注意事项及JavaScript和jQuery基础知识的重要性。通过实例展示了如何将字符串转化为日期并进一步转换为long类型来解决时间比较问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这里写图片描述

还有一种方法是先把String转化成Date再把Date转化成long类型。

       SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

       Date date1 = sdf.parse(beginTime);
       long sTime=date1.getTime();
       Date date2 = sdf.parse(endTime);
       long eTime=date2.getTime();

具体使用哪种方法需要根据业务逻辑来,我使用的是第二种方法。

顺便总结一下今天遇到的坑:
1、html中的content是保留字不能用作id名
2、controller与jsp页面传输数据的时候,一定要注意变量以及变量类型的一致性。
3、一定要恶补js和jquery知识,没文化真可怕。。。

### Java 中将 `yyyy-MM-dd HH:mm:ss` 换为长时间戳 在 Java 中可以使用 `SimpleDateFormat` 来解析字符串形式的时间并将其毫秒级时间戳。下面是一个具体的实现方法: ```java import java.text.ParseException; import java.text.SimpleDateFormat; public class DateTimeToTimestamp { public static void main(String[] args) { String dateTimeStr = "2023-10-04 15:30:45"; try { // 定义日期格式 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // 将字符串按照指定格式解析为 Date 对象 var dateObj = sdf.parse(dateTimeStr); // 获取自纪元以来的毫秒数表示的时间戳 long timestamp = dateObj.getTime(); System.out.println("The corresponding timestamp is: " + timestamp); } catch (ParseException e) { e.printStackTrace(); } } } ``` 上述代码展示了如何定义一个特定模式来匹配给定的日期时间串,并通过调用 `parse()` 方法得到对应的 `Date` 实例对象,最后利用该实例的方法获取到从 Unix 纪元(即格林尼治标准时间 1970 年 1 月 1 日午夜)至今所经历过的总毫秒数作为最终的结果[^1]。 对于更现代的做法,在 Java 8 及以上版本推荐采用新的日期 API (`java.time`) 进行操作,因为其提供了更好的线程安全性和易读性: ```java import java.time.LocalDateTime; import java.time.ZoneId; import java.time.format.DateTimeFormatter; public class ModernDateTimeToTimestamp { public static void main(String[] args){ String datetimeString = "2023-10-04 15:30:45"; // 创建 formatter 和 LocalDateTime 解析器 DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); // 使用 formatter 解析字符串至 LocalDateTime 类型 LocalDateTime localDateTime = LocalDateTime.parse(datetimeString, formatter); // 把 LocalDateTime 映射到 Instant 上再长整型的时间戳 long epochMilli = localDateTime.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli(); System.out.println("Modern approach yields the following millisecond-based timestamp:" + epochMilli); } } ``` 这段程序同样实现了相同的功能——把形如 `'yyyy-MM-dd HH:mm:ss'` 的字符串化为基于当前默认时区下的 UNIX 时间戳;不过这里采用了更为简洁直观的方式完任务。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值