如何使@SafeHtml成为String类型的默认验证器?这是愚蠢的吗?
Hibernate Validator具有一个称为@SafeHtml的验证器,该验证器可防止HTML标记用于XSS保护。我希望这是String字段的默认设置(以及将其关闭的某种方法)。你能为我指出正确的方向吗?
另外,如何将whitelistType默认更改为NONE?
最佳答案
Bean验证没有为特定数据类型隐式添加约束的概念。
但是,如果您使用的是Hibernate Validator,则可以利用API for dynamic constraint declaration的优势。您可以通过查询元模型来识别模型的所有String
属性(请参见Validator#getConstraintsForClass()
)。然后,您可以通过约束声明API将@SafeHtml
约束添加到所有这些属性。您还可以为约束应用正确的白名单类型。
关于java - hibernate validator @SafeHtml默认,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28635925/