Timestamp类型使用小结

本文介绍了如何通过将新闻发布时间字段从Date类型更改为Timestamp类型来解决同一天内新闻乱序发布的问题。通过具体实例展示了在Java代码中创建Timestamp对象的方法,并在数据库映射文件中配置了相应的字段类型。

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

1.背景介绍:

在做项目的过程中,涉及到一个新闻发布的问题,最初保存新闻发布时间,我用的是Date类型,同样在Oracle数据库中,也是DATE类型.但格式都是YYYY-MM-DD的.

如果同一天发布很多新闻,那根据发布时间排序的话,当天发布的新闻就是乱序的.而测试要求,需要进行有序排列.经查询,可以通过更改数据库DATE格式的方式,来进行设置.但我没有采用这种方式,而是将新闻Model实体类中的发布时间字段由java.util.Date类型改为了java.sql.Timestamp类型,同样将Oracle数据库对应的列类型,改为Timestamp.

2.java代码中使用Timestamp:

我的采用的方式:
Date time=new Date();   
Timestamp timestamp=new Timestamp(time.getTime());              
item.setPublishTime(timestamp);
mapper.xml 映射文件:
<result property="publishTime" column="publish_time" jdbcType="TIMESTAMP"/>
插入Oracle数据库之后的效果截图:

这里写图片描述

3.Timestamp使用方式扩展:

java获取取得Timestamp类型的当前系统时间
java获取取得Timestamp类型的当前系统时间 格式:2010-11-04 16:19:42

方法1:
Timestamp d = new Timestamp(System.currentTimeMillis()); 
方法2:
Date date = new Date();       
Timestamp nousedate = new Timestamp(date.getTime());

4.参考文章:

java获取获得Timestamp类型的当前系统时间

将 `timestamp` 类型转换成其他字段类型是一个常见的操作,在数据库查询、数据处理或程序设计过程中经常需要进行这种类型的转换。以下是详细的介绍: ### 1. **从 timestamp 转换到字符串 (String)** - 在许多编程语言和 SQL 查询中,可以将时间戳 (`timestamp`) 格式化为可读的日期字符串。 - 示例(SQL): ```sql SELECT DATE_FORMAT(your_timestamp_column, '%Y-%m-%d %H:%i:%s') AS formatted_date FROM your_table; ``` - 示例(Python 使用 Pandas 库): ```python import pandas as pd df['formatted_date'] = pd.to_datetime(df['your_timestamp_column']).dt.strftime('%Y-%m-%d %H:%M:%S') ``` ### 2. **从 timestamp 转换到日期 (Date) 或 时间 (Time)** - 如果只需要提取日期部分或者时间部分,也可以通过函数实现分离。 - 示例(MySQL 提取日期部分): ```sql SELECT DATE(your_timestamp_column) AS date_part FROM your_table; ``` - 示例(PostgreSQL 提取时间部分): ```sql SELECT TIME(your_timestamp_column) AS time_part FROM your_table; ``` ### 3. **从 timestamp 转换到 Unix 时间戳 (Unix Timestamp / 秒数)** - 将标准的时间戳转为自纪元以来的秒数表示形式。 - 示例(MySQL): ```sql SELECT UNIX_TIMESTAMP(your_timestamp_column) AS unix_time FROM your_table; ``` - 示例(Python): ```python import datetime dt = datetime.datetime.fromisoformat('2023-10-05T14:30:00') print(dt.timestamp()) # 输出对应的 Unix 时间戳 ``` ### 4. **从 timestamp 转换到年月日等组件** - 可以单独抽取年份、月份、天数或其他细节信息。 - 示例(SQL Server 获取年份): ```sql SELECT YEAR(your_timestamp_column) AS year_part FROM your_table; ``` --- **总结** 以上是一些常见场景下对 `timestamp` 的转换方法,实际应用时需根据使用的工具(如 Python、SQL 等)、目标需求以及原始数据格式来进行调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值