首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将oracle dataType映射到java dataType?

如何将oracle dataType映射到java dataType?
EN

Stack Overflow用户
提问于 2014-01-11 11:52:41
回答 1查看 26.1K关注 0票数 5

如何将oracle dataType映射到java dataType?

我试了一下,但不准确。

代码语言:javascript
复制
 DatabaseMetaData databaseMetaData = this.getConnection().getMetaData(); 
 ResultSet rs = databaseMetaData.getColumns(catalog, schema, tableName, columnName);

 while (rs.next()) {
     if ( rs.getString("data_type").equals(Types.NUMERIC)){
           javaDataType = "java.math.BigDecimal";
     } }

例如:甲骨文=>编号(2,3) => javaDataType = BigDecimal;甲骨文=>编号(15) => javaDataType = BigDecimal;

将oracle dataType转换为java dataType的最佳方法

EN

回答 1

Stack Overflow用户

发布于 2014-01-11 14:27:17

我不太清楚你想做什么。

Oracle在java clases和SQL类型之间具有默认映射,

请看这张桌子:01/java.112/e16548/apxref.htm#JJDBC28906

例如,有从NUMBER类型到java类型的有效转换:

代码语言:javascript
复制
+---------------+--------------------+
| SQL data type | Java types         |
+---------------+--------------------+
|   NUMBER      |boolean             |
|               |char                |   
|               |byte                |
|               |short               |
|               |int                 |
|               |long                |
|               |float               |
|               |double              |
|               |java.lang.Byte      |
|               |java.lang.Short     |
|               |java.lang.Integer   |
|               |java.lang.Long      |
|               |java.lang.Float     |
|               |java.lang.Double    |
|               |java.math.BigDecimal|
|               |oracle.sql.NUMBER   |
+---------------+--------------------+

如果我们想要将NUMBER作为特定的java类型,我们需要使用来自ResultSet接口的appriopriate getXXX方法,例如:

getInt检索该数字为java int-> http://docs.oracle.com/javase/7/docs/api/java/sql/ResultSet.html#getInt%28int%29

getLong将该数字检索为java long -> http://docs.oracle.com/javase/7/docs/api/java/sql/ResultSet.html#getLong%28int%29

getDouble将该数字检索为java long -> http://docs.oracle.com/javase/7/docs/api/java/sql/ResultSet.html#getDouble%28int%29

getBigDecimal以java BigDecimal -> http://docs.oracle.com/javase/7/docs/api/java/sql/ResultSet.html#getBigDecimal%28java.lang.String,%20int%29的形式检索数字

这是您--开发人员--为您的数据选择适当方法的责任。

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21061890

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档