有没有一个用于用户输入的Java格式化库?

问题描述 投票:0回答:1

这似乎是任何一个Java项目都需要的一个非常普遍的东西。 但我却找不到任何可以满足这个目的的东西。

我曾经使用过一个叫做Stripes Framework的网络框架,它有注解驱动的验证器,并通过他们的验证器API进行自动格式化。

比如说,你可以在你的控制器上定义这些字段。

@Validate(maxlength = ModelConstants.NAME_MAX_LENGTH, converter = CapitializeFullyTypeConverter.class)
private String name;

@Validate(maxlength = ModelConstants.NAME_MAX_LENGTH, converter = EmailTypeConverter.class)
private String email;

这些字段将被定义在你的控制器动作Bean上,所有的用户输入将根据指定的规则自动进行验证和格式化。

如果有人将他们的电子邮件地址输入为:"",那么它就会自动被验证和格式化。"[email protected] "那么它就会被自动格式化为: "[email protected]"

我想找到这样的东西,在DTO中自动格式化数据。

如果没有这样的东西,通常的处理方式是什么? 大家肯定不会为DTO中的每个getter编写自定义格式化函数吧?

java spring spring-mvc dto
1个回答
1
投票

如果你使用Spring Mvc,你可以访问格式化API。有预先存在的注解在这里。org.springframework.format.annotation 包中的日期和数字格式化。

如果您需要自定义格式化规则,您可以编写您自己的规则,并通过 FormattingConversionServiceFactoryBean.

请看这里的一些例子。https:/docs.spring.iospring-frameworkdocs3.2.0.RC1referencehtmlvalidation.html。

© www.soinside.com 2019 - 2024. All rights reserved.