不推荐使用的方法java.sql.CallableStatement.getBigDecimal(int parameterIndex,int scale)的替换

时间:2018-02-09 01:31:11

标签: jdbc java-8

我正在尝试替换这个已弃用的方法,但建议的替换会省略 Scale 参数。

scale参数对我的应用程序似乎很关键,但我无法找到保留精度值的有效方法

但是,对于ResultSet对象,setScale()方法是一个保存宽限,但CallableStatement中没有这样的方法。任何人都可以提出替代方案吗?

1 个答案:

答案 0 :(得分:3)

正如CallableStatement.getBigDecimal(int parameterIndex, int scale)的文档中所述:

  

<强>已过时即可。 使用getBigDecimal(int parameterIndex)getBigDecimal(String parameterName)

使用getBigDecimal(int)getBigDecimal(String),将返回

  

[..]指定的JDBC NUMERIC参数的值为   java.math.BigDecimal对象,右边有多少个数字   小数点包含的值。

如果您需要更改比例,则需要使用BigDecimal.setScale(int newScale, RoundingMode roundingMode)(或其中一个兄弟姐妹)。这是大多数(如果不是全部)JDBC驱动程序在不推荐使用的getBigDecimal(int parameterIndex, int scale)方法中所做的事情。