Skip to content

Commit f0a503f

Browse files
committed
Merge pull request #19142 from dreis2211
* pr/19142: Use DateTimeFormatter in favor of SimpleDateFormat Closes gh-19142
2 parents aca094d + 8a730ff commit f0a503f

File tree

3 files changed

+12
-12
lines changed

3 files changed

+12
-12
lines changed

spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/management/HeapDumpWebEndpoint.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@
2727
import java.nio.ByteBuffer;
2828
import java.nio.channels.ReadableByteChannel;
2929
import java.nio.file.Files;
30-
import java.text.SimpleDateFormat;
31-
import java.util.Date;
30+
import java.time.LocalDateTime;
31+
import java.time.format.DateTimeFormatter;
3232
import java.util.concurrent.TimeUnit;
3333
import java.util.concurrent.locks.Lock;
3434
import java.util.concurrent.locks.ReentrantLock;
@@ -106,7 +106,7 @@ private Resource dumpHeap(boolean live) throws IOException, InterruptedException
106106
}
107107

108108
private File createTempFile(boolean live) throws IOException {
109-
String date = new SimpleDateFormat("yyyy-MM-dd-HH-mm").format(new Date());
109+
String date = DateTimeFormatter.ofPattern("yyyy-MM-dd-HH-mm").format(LocalDateTime.now());
110110
File file = File.createTempFile("heapdump" + date + (live ? "-live" : ""), ".hprof");
111111
file.delete();
112112
return file;

spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/management/PlainTextThreadDumpFormatter.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@
2323
import java.lang.management.MonitorInfo;
2424
import java.lang.management.RuntimeMXBean;
2525
import java.lang.management.ThreadInfo;
26-
import java.text.SimpleDateFormat;
27-
import java.util.Date;
26+
import java.time.LocalDateTime;
27+
import java.time.format.DateTimeFormatter;
2828
import java.util.List;
2929
import java.util.stream.Collectors;
3030
import java.util.stream.Stream;
@@ -47,8 +47,8 @@ String format(ThreadInfo[] threads) {
4747
}
4848

4949
private void writePreamble(PrintWriter writer) {
50-
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
51-
writer.println(dateFormat.format(new Date()));
50+
DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
51+
writer.println(dateFormat.format(LocalDateTime.now()));
5252
RuntimeMXBean runtime = ManagementFactory.getRuntimeMXBean();
5353
writer.printf("Full thread dump %s (%s %s):%n", runtime.getVmName(), runtime.getVmVersion(),
5454
System.getProperty("java.vm.info"));

spring-boot-project/spring-boot/src/main/java/org/springframework/boot/info/GitProperties.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@
1616

1717
package org.springframework.boot.info;
1818

19-
import java.text.ParseException;
20-
import java.text.SimpleDateFormat;
2119
import java.time.Instant;
20+
import java.time.format.DateTimeFormatter;
21+
import java.time.format.DateTimeParseException;
2222
import java.util.Properties;
2323

2424
/**
@@ -108,11 +108,11 @@ private static String coerceToEpoch(String s) {
108108
if (epoch != null) {
109109
return String.valueOf(epoch);
110110
}
111-
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ");
111+
DateTimeFormatter format = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ssZ");
112112
try {
113-
return String.valueOf(format.parse(s).getTime());
113+
return String.valueOf(format.parse(s, Instant::from).toEpochMilli());
114114
}
115-
catch (ParseException ex) {
115+
catch (DateTimeParseException ex) {
116116
return s;
117117
}
118118
}

0 commit comments

Comments
 (0)