Java 将长代码转换为原始jdbc
我定义了以下函数:Java 将长代码转换为原始jdbc,java,sql,oracle,jdbc,Java,Sql,Oracle,Jdbc,我定义了以下函数: private RAW[] longToRaw(long[] toConvert) throws SQLException { final RAW[] toReturn = new RAW(toConvert.length); for(int i = 0; i <toReturn.length;i++) { toReturn[i] = new RAW(toConvert[i]); } }
private RAW[] longToRaw(long[] toConvert) throws SQLException
{
final RAW[] toReturn = new RAW(toConvert.length);
for(int i = 0; i <toReturn.length;i++)
{
toReturn[i] = new RAW(toConvert[i]);
}
}
这不会给出传递到数据库中所需的long值。我如何解决这个问题?也就是说,这是我将
long
转换为RAW
的方式中的问题,或者它是在我的检索代码中吗?看来您正在调用一个不推荐使用的构造函数,另外它仅用于字节
数组和字符串。我相信适当的方法是:
toReturn[i] = RAW.newRAW(Long.toHexString(toConvert[i]));
for(RAW result : results) {
String s = new String(result.getBytes());
}
编辑:如果结果
是一个迭代器
,则while
-循环应更改为:
while(results.hasNext()) {
String s = new String(results.next().getBytes());
}
如果results
是一个RAW
-数组,您应该这样做:
toReturn[i] = RAW.newRAW(Long.toHexString(toConvert[i]));
for(RAW result : results) {
String s = new String(result.getBytes());
}
似乎您正在调用一个不推荐使用的构造函数,它还意味着仅用于字节
数组和字符串
s。我相信适当的方法是:
toReturn[i] = RAW.newRAW(Long.toHexString(toConvert[i]));
for(RAW result : results) {
String s = new String(result.getBytes());
}
编辑:如果结果
是一个迭代器
,则while
-循环应更改为:
while(results.hasNext()) {
String s = new String(results.next().getBytes());
}
如果results
是一个RAW
-数组,您应该这样做:
toReturn[i] = RAW.newRAW(Long.toHexString(toConvert[i]));
for(RAW result : results) {
String s = new String(result.getBytes());
}
@对不起,我没有仔细查看你的检索码。我删除了我以前的评论。@Woot4Moo对不起,我没有仔细查看您的检索代码。我删除了我以前的评论。