【发布时间】:2016-03-15 13:44:16
【问题描述】:
从休眠中检索 Db 列长度。我用过:
Property property = (Property)persistentClass.getProperty(propertyName);
Column col = (Column)property.getColumnIterator().next();
int length = col.getLength();
System.out.print("\t");
System.out.print(persister.getPropertyColumnNames(propertyName)[0]);
System.out.print("\t Column length :::");
System.out.print(length);
我的表结构是:
TYPE_ID NUMBER
TYPE_NAME VARCHAR2(200)
CREATION_DATE DATE
CREATED_BY VARCHAR2(200) Y
LAST_UPDATE_DATE DATE Y
LAST_UPDATED_BY VARCHAR2(200) Y
DISPLAY_NAME VARCHAR2(200) Y
ENABLED VARCHAR2(1) Y
DESCRIPTION VARCHAR2(4000) Y
我使用hibernate得到的结果是:
CREATED_BY Column length :::255 STRING
CREATION_DATE Column length :::255 TIMESTAMP
DESCRIPTION Column length :::255 STRING
DISPLAY_NAME Column length :::200 STRING
ENABLED Column length :::255 STRING
LAST_UPDATED_BY Column length :::255 STRING
LAST_UPDATE_DATE Column length :::255 TIMESTAMP
TYPE_NAME Column length :::200 STRING
请指教..
【问题讨论】:
-
映射中定义了哪些长度值?
-
@vanje 我的映射中没有定义长度列。是否需要这样做?从休眠中检索长度?
-
不,这不是必需的。但如果在定义长度时有任何区别,那将会很有趣。
标签: java database oracle hibernate