尝试在db中加载blob时,为什么会出现java.lang.AbstractMethodError?

尝试在db中加载blob时,为什么会出现java.lang.AbstractMethodError?

Date.parse('1997-07-16T19:20:15')           // ISO 8601 Formats

Date.parse('1997-07-16T19:20:30+01:00')     // ISO 8601 with Timezone offset

编辑:正则表达式版本


x = "2011-01-28T19:30:00EST"


MM = ["January", "February","March","April","May","June","July","August","September","October","November", "December"]


xx = x.replace(

    /(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):\d{2}(\w{3})/,

    function($0,$1,$2,$3,$4,$5,$6){

        return MM[$2-1]+" "+$3+", "+$1+" - "+$4%12+":"+$5+(+$4>12?"PM":"AM")+" "+$6

    }

)

结果


January 28, 2011 - 7:30PM EST

Edit2:我把我的时区改为EST,现在我跟进了


x = "2011-01-28T19:30:00-05:00"


MM = {Jan:"January", Feb:"February", Mar:"March", Apr:"April", May:"May", Jun:"June", Jul:"July", Aug:"August", Sep:"September", Oct:"October", Nov:"November", Dec:"December"}


xx = String(new Date(x)).replace(

    /\w{3} (\w{3}) (\d{2}) (\d{4}) (\d{2}):(\d{2}):[^(]+\(([A-Z]{3})\)/,

    function($0,$1,$2,$3,$4,$5,$6){

        return MM[$1]+" "+$2+", "+$3+" - "+$4%12+":"+$5+(+$4>12?"PM":"AM")+" "+$6 

    }

)

返回


January 28, 2011 - 7:30PM EST

基本上


String(new Date(x))

返回


Fri Jan 28 2011 19:30:00 GMT-0500 (EST)

正则表达式部分只是将上面的字符串转换为您需要的格式。


January 28, 2011 - 7:30PM EST


森林海
浏览 610回答 3
3回答

红糖糍粑

使用JDBC时,通常会发生该错误,因为JDBC驱动程序实现的JDBC API版本比JRE中包含的版本更旧。只要您不尝试使用新API中出现的方法,这些旧版本就可以了。我不确定setBinaryStream出现了什么版本的JDBC 。我认为它已经存在了一段时间。无论如何,你的JDBC驱动程序版本(10.2.0.4.0)已经很老了,我建议将它升级到11g发布的版本(在这里下载),然后再试一次。

收到一只叮咚

以下是JDK API关于AbstractMethodError的内容:应用程序尝试调用抽象方法时抛出。通常,编译器会捕获此错误; 如果自上次编译当前正在执行的方法以来某些类的定义发生了不兼容的更改,则此错误只能在运行时发生。也许是oracle驱动程序中的bug?
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java
Oracle