gpt4 book ai didi

hibernate - 如果数据在进入数据库之前需要修剪,您将其放入哪一层

转载 作者:行者123 更新时间:2023-12-03 20:24:15 27 4
gpt4 key购买 nike

所有数据在进入数据库之前都需要进行修剪。我目前使用 Hibernate 和 JSF。你会把这个逻辑放在哪里?在 hibernate 实体 bean 或 JSF 支持 bean 中?有什么优点和缺点。还有其他建议吗?

最佳答案

在 View 侧进行。您只需创建一个 JSF Converter对于 String.class .

@FacesConverter(forClass=String.class)
public class StringTrimmer implements Converter {

@Override
public Object getAsObject(FacesContext context, UIComponent component, String value) {
return value.trim();
}

@Override
public String getAsString(FacesContext context, UIComponent component, Object value) {
return value.toString();
}

}

或者当您仍在使用 JSF 1.2 时,请删除 @FacesConverter并按如下方式在您的 faces-config.xml 中注册它。

<converter>
<converter-for-class>java.lang.String</converter-for-class>
<converter-class>com.example.converters.StringTrimmer</converter-class>
</converter>

无论哪种方式,它将应用于 String 类型的所有输入属性,而无需更改任何其他内容。

由于内部设计原因,这在 JSF 1.1 或更早版本上是不可能的。

关于hibernate - 如果数据在进入数据库之前需要修剪,您将其放入哪一层,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5185088/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com