我在数据库中有一些具有固定长度的字段。我是JPA
和JSR 303
的新手。
JPA不允许我持有一个实体,该实体的字段大小比db中允许的大(这是我想要的);并使用@Column
参数描述length
仅对ddl生成有用。
此外,使用JSR 303的@Size
描述参数的AFAIK只会在我希望修改字段时触发答案。
我想知道使用JSR 303,JPA或其他东西处理截断的标准方法是什么。
编辑:是否可以在JPA中启用一些自动截断?
祝你好运
答案 0 :(得分:1)
就像JB Nizet建议的那样可以用setter来完成。但这不会使它成为严格的Java Bean。
您也可以在数据库中实现它,但这会使您的实现不那么便携。
最好的方法是将此逻辑保留在bean或DB之外。即在您的应用程序逻辑中。
<强>更新强>
如果你需要在JPA中进行截断,请查看@EntityListeners和回调。 http://docs.jboss.org/hibernate/orm/4.0/hem/en-US/html/listeners.html