Mur*_*eis 0 java date spring-boot java-stream datetimeformatter
我正在尝试解决一个似乎很棘手但我陷入困境的问题。你能帮忙吗?
在 Spring Boot 中,我有一个Holiday保存在 MySQL 数据库上的国定假日对象。该对象Holiday包含以下属性:
(...)
@Column(name = "title")
private String HolidayTitle;
@Column(name = "date")
private String holidayDate;
@Column(name = "updated")
private LocalDateTime updated;
@Column(name = "country")
private String country;
(...)
Run Code Online (Sandbox Code Playgroud)
但我对该属性感兴趣updated,该属性在数据库中存储为 2021-10-26 20:54:48。我想将其格式化为 Thymeleaf 的 dd-MM-yyyy HH:mm,但它由具有不同属性的对象列表组成Holiday。
在控制器中,列表被检索如下:
@GetMapping("/getAllHolidays")
public String getAllHolidays(Model theModel) {
List<Holiday> theHolidays = holidayService.findAll();
theModel.addAttribute("holidays", theHolidays);
return "holidays";
}
Run Code Online (Sandbox Code Playgroud)
如何使用仅格式化updated列表中所有假日对象的属性?theHolidaysDateTimeFormatter
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd-MM-yyyy HH:mm");
Run Code Online (Sandbox Code Playgroud)
是否可以使用Java流来实现这一点?
小智 6
您可以使用 Java Stream 解析日期,如下所示:
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd-MM-yyyy HH:mm");
List<String> formattedDates = theHolidays.stream()
.map(Holiday::getUpdated)
.map(formatter::format)
.collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)
但如果您使用百里香,您可以像这样设置日期格式:
<tr th:each="holiday : ${holidays}">
<td th:text="${#temporals.format(holiday.updated, 'dd-MM-yyyy HH:mm')}"></td>
</tr>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1008 次 |
| 最近记录: |