Javaで以下を最適化する方法を知りたいです。私はAndroidフォンでそれをしたいので、メモリに入れられる量が少ないほど良い.
1 つの列で構成されるレコード セットを取得します。この列には、バイナリ データがバイト配列で保持されます。これは私が遊んだことがないものです。
バイナリ データの情報の構造は、次の場所にあります: BLOB
SRID と MBR をスキップしたいのですが、ENDIAN、CLASS TYPE、および実際のジオメトリ データが必要です。
この質問では、ジオメトリ データの実際の処理はそれほど重要ではなく、データを取得する方法とデータを高速に取得する方法が重要です。
Stmt stmt = local_db.prepare("Select geometry From Parcel");
while (stmt.step()){
//stmt.column_bytes(0) holds the byte array
//this could be used with a ByteArrayInputStream or perhaps a ByteBuffer
//maybe something else, what ever would be faster??
//
//Next would be the proccessing of the byte array to get the values out.
//Switch (ENDIAN){
// case 0 :
//
// break;
// default:
//
//}
}
stmt.close();
最終的に、これらのシェイプはレンダラーに直接渡されるので、メモリに何も保持する必要はありません。それは先を行っていますが、最終的にどのように使用するかを確認するのに役立つかもしれません.