史上最全java日期转换
史上最全java日期转换
使用jodaTime,满足各种转化姿势
依赖
引入jodaTime依赖
<dependency> <groupId>joda-time</groupId> <artifactId>joda-time</artifactId> <version>2.9.9</version> </dependency>
Mysql日期和时间
列举这个表格,是为了快速查找对应类型,方便我们建立java语言与SQL语言的连接通道。
转换
时间类型转化的场景很多,下面我举几个例子,基本解决了大多数场景,希望大家能举一反三
- yyyy-MM-dd 转 java.sql.Date
String fmtPattern = "yyyy-MM-dd"; DateTimeFormatter fmt = DateTimeFormat.forPattern(fmtPattern); DateTime dateTime = fmt.parseDateTime("2020-08-10"); java.sql.Date date = new java.sql.Date(dateTime.getMillis()); System.out.println(date.toString()); // 2020-08-10
- YYYY-MM-DD HH:MM:SS 转 java.util.Date String fmtPattern = "yyyy-MM-dd HH:mm:ss"; DateTimeFormatter fmt = DateTimeFormat.forPattern(fmtPattern); DateTime dateTime = fmt.parseDateTime("2020-08-10 10:30:20"); java.util.Date date = new java.util.Date(dateTime.getMillis()); System.out.println(date.toString()); // Mon Aug 10 10:30:20 CST 2020
- YYYY-MM-DD HH:MM:SS 转 java.util.Timestamp
String fmtPattern = "yyyy-MM-dd HH:mm:ss"; DateTimeFormatter fmt = DateTimeFormat.forPattern(fmtPattern); DateTime dateTime = fmt.parseDateTime("2020-08-10 10:30:20"); java.sql.Timestamp timestamp = new Timestamp(dateTime.getMillis()); System.out.println(timestamp.toString()); // 2020-08-10 10:30:20.0 System.out.println(timestamp.getTime()); // 1597026620000
- HH:MM:SS 转 java.sql.Time String fmtInput = "HH:mm:ss"; DateTimeFormatter fmt = DateTimeFormat.forPattern(fmtInput); DateTime dateTime = fmt.parseDateTime("11:30:20"); Time time = new Time(dateTime.toDate().getTime()); System.out.println(time.toString()); // 11:30:20
- YYYY 转 java.sql.Date String fmtPattern = "yyyy"; DateTimeFormatter fmt = DateTimeFormat.forPattern(fmtPattern); DateTime dateTime = fmt.parseDateTime("2020"); java.sql.Date date = new Date(dateTime.getMillis()); System.out.println(date.toString()); // 2020-01-01
上一篇:
Python 安装包管理工具 pip