采坑过后一定要记录一下 Date

本文介绍Java中日期时间的转换方法,包括使用SimpleDateFormat将Date类型转换为字符串,并将其解析回Date类型的过程。注意Date类型的默认输出格式及在实际应用中的注意事项。

关于java中日期时间的转换

1、date转string

Date date = new Date();

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

String dateStr = sdf.format(date);

Date dateCopy  = sdf.parse(dateStr);    //需要添加parseException异常处理 try catch

注意:

其中dateCopy的输出格式并不为yyyy-mm-dd hh:mm:ss,因为Date有默认的输出格式,不会改变。

由于前段展示需要yyyy-mm-dd hh:mm:ss格式,参数传递又是传递的对象,不想单独传递时间,所以一直想改着date的日期为yyyy-mm-dd hh:mm:ss格式,最后才发现不行,还是单独传递的。

### 解决方案:在 MySQL 存储过程中分解 `CURRENT_DATE` 并插入到表中 为了实现将当前日期 (`CURRENT_DATE`) 分解为年、月、日以及周数,并将其插入目标表的操作,可以按照以下方法构建存储过程: #### 创建目标表 首先需要创建一个用于接收分解后的日期信息的目标表。假设该表名为 `date_parts_table`,其结构如下所示: ```sql CREATE TABLE date_parts_table ( id INT AUTO_INCREMENT PRIMARY KEY, year_part INT NOT NULL, month_part INT NOT NULL, day_part INT NOT NULL, week_part INT NOT NULL ); ``` #### 构建存储过程 接下来定义存储过程,使用内置的日期函数分别提取年份(`YEAR()`)、月份(`MONTH()`)、日期(`DAY()`)和周数(`WEEK()`)[^1]。以下是完整的存储过程代码示例: ```sql DELIMITER $$ CREATE PROCEDURE insert_current_date_parts() BEGIN -- 定义变量以保存各个部分 DECLARE current_year INT; DECLARE current_month INT; DECLARE current_day INT; DECLARE current_week INT; -- 提取 CURRENT_DATE 各个组成部分 SET current_year = YEAR(CURRENT_DATE); -- 获取年份 SET current_month = MONTH(CURRENT_DATE); -- 获取月份 SET current_day = DAY(CURRENT_DATE); -- 获取日期 SET current_week = WEEK(CURRENT_DATE); -- 获取周数 (默认一年的第一周从一月一日开始) -- 将各部分插入至目标表 INSERT INTO date_parts_table(year_part, month_part, day_part, week_part) VALUES(current_year, current_month, current_day, current_week); END$$ DELIMITER ; ``` 在此存储过程中,我们先声明四个局部变量来暂存由 `CURRENT_DATE` 得来的各项数值;接着运用相应的日期处理函数填充这些变量;最后把这些值组合起来并通过一条 `INSERT` 语句送入预先准备好的表内。 #### 调用存储过程 一旦上述存储过程成功建立之后,就可以随时调用来执行所需的任务了。只需简单地发出下面这样的命令即可触发它的工作流程: ```sql CALL insert_current_date_parts(); ``` 每次调用都会向 `date_parts_table` 表新增一行记录,代表当天的具体拆分情况。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值