java - 用户生成内容的 Thymeleaf 十进制格式选项
问题描述
我正在尝试使用百里香叶在后端解析和处理用户生成的内容。因此,我们做了以下工作:
@RestController
@RequestMapping(path = "/api/v1")
@Slf4j
public class MyController {
@Autowired
private TemplateEngine templateEngine;
...
@ApiResponse(code = 200, message = "OK", response = DeliveryDTO.class)
@PostMapping(path = "/{myId}/serve")
public DeliveryDTO serve(
@PathVariable String myId
) {
... // get myObj;
html = templateEngine.process(myObj.getHtml(), myObj.getContext());
这真的很好。但是现在我们有了 myObj 的某些部分,它们应该获得默认格式。例如
myObj.getHtml() 可以提供这个:
<table>
<tr th:each="item: ${ko}">
<td>
<a th:href="@{${URLBuilder.build(item)}}"><span th:text="${item.isin}"></span></a>.
</td>
<td>
<span th:text="${item.value1}"></span>
</td>
<td>
<span th:text="${item.value2}"></span>
</td>
</tr>
</table>
现在我希望所有出现的“item.value1”都被格式化为两位小数,“item.value2”被格式化为三位小数。我可以将它添加到 html 模板中,但由于这是某种用户内容,我更愿意遍历所有出现并添加十进制格式选项。关于如何实现这一目标的任何想法?
干杯迈克
解决方案
您可以@NumberFormat
在 DTO 中的字段上使用注释。
https://docs.spring.io/spring/docs/current/spring-framework-reference/core.html#format-annotations-api
如果那不可能,thymeleaf 也有一些格式化选项
推荐阅读
- git - 无法使用 ssh 推送到 git
- python - 为什么我在这个 API 调用中得到 TypeError 字符串索引必须是整数?(播种 Django DB)
- android - 在 android Studio 中发现 java.lang.reflect.InvocationTargetException(无错误消息)
- python - 如何实现Player结果映射?
- r - 如何计算 R 中单元格内由逗号分隔的唯一 2 个单词短语?
- python - f.write(buf) TypeError: 需要一个类似字节的对象,而不是 'str'
- excel - 有没有办法指定 GetOpenFilename 使用的目录?
- python - Leetcode 中的二和问题的算法没有输出
- travis-ci - 在 vuepress-Travis CI 构建期间找不到 package.json 文件时出错
- python - 向左旋转 k 个单元格,其中 k 大于数组的长度