数据库 – 从Hibernate映射获取列长度?
发布时间:2020-12-12 06:43:48 所属栏目:MsSql教程 来源:网络整理
导读:要验证我收到的数据,我需要确保长度不会超过数据库列长度.现在所有长度信息都存储在Hibernate映射文件中,无论如何以编程方式访问此信息? 解决方法 你可以实现它,但这并不容易.您可能希望在启动时执行类似下面的操作并存储值的静态缓存.有许多特殊情况需要处
要验证我收到的数据,我需要确保长度不会超过数据库列长度.现在所有长度信息都存储在Hibernate映射文件中,无论如何以编程方式访问此信息?
解决方法你可以实现它,但这并不容易.您可能希望在启动时执行类似下面的操作并存储值的静态缓存.有许多特殊情况需要处理(继承等),但它应该适用于简单的单列映射.我可能遗漏了一些instanceof和null检查.for (Iterator iter=configuration.getClassMappings(); iter.hasNext();) { PersistentClass persistentClass = (PersistentClass)iter.next(); for (Iterator iter2=persistentClass.getPropertyIterator(); iter2.hasNext();) { Property property = (Property)iter2.next(); String class = persistentClass.getClassName(); String attribute = property.getName(); int length = ((Column)property.getColumnIterator().next()).getLength(); } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容