@Override
protected RowDescriptorBuilder configureRowDescriptorBuilder(
SQLStatement compiled,
ResultSet resultSet) throws SQLException {
RowDescriptorBuilder builder = super.configureRowDescriptorBuilder(
compiled,
resultSet);
// override numeric Java types based on JDBC defaults for DbAttributes, as Oracle
// ResultSetMetadata is not very precise about NUMERIC distinctions...
// (BigDecimal vs Long vs. Integer)
if (dbEntity != null) {
for (DbAttribute attribute : dbEntity.getAttributes()) {
if (!builder.isOverriden(attribute.getName())
&& TypesMapping.isNumeric(attribute.getType())) {
builder.overrideColumnType(attribute.getName(), TypesMapping
.getJavaBySqlType(attribute.getType()));
}
}
}