0
我有一个使用BlazeDS的连接到后端Java的Flex应用程序。使用远程处理,我给一个API调用在Oracle数据库上运行的表的SELECT语句(使用传统的JDBC类)。BlazeDS的转换BigDecimal的字符串
表有2列:
PRODUCT_CODE of type NVARCHAR2(32) and
DEMAND of type NUMBER(10, 0)
我的Java API如下:
public List<?> getQueryResult(String query) {
Connection conn = DriverManager.getConnection(connStr, userName, password);
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(query);
ArrayList<?> result = new ArrayList<?>();
while(rs.next()) {
Object[] itemArray = new Object[2];
itemArray[0] = rs.getObject(1);
itemArray[1] = rs.getObject(2);
result.add(itemArray);
}
return result;
}
在我的Flex的一面,我对这个遥控操作的结果事件的处理程序:
private function onResult(e:ResultEvent) : void {
var result:ArrayCollection = (e.result as ArrayCollection);
}
奇怪的是,对应于需求列中的值被自动转换成字符串(I调试找到指出,在后端,这些都是BigDecimal)的
有什么建议?