数据库查询j2me包括标准

时间:2012-08-13 09:47:05

标签: java database java-me criteria

我正在使用J2ME创建一个应用程序。用于连接数据库我正在使用RecordStore

所以要获得一条记录我需要写如下:

public boolean SearchRecord(String Rec, int pos )
    {
        String [] data = getRecordData();

        Rec = Rec.substring(0,pos);
        for ( int i = 0 ; i < data.length ; i++ )
        {
            data[i] = data[i].substring(0, pos );
            if ( Rec.toString().trim().equals(data[i].toString().trim()) )
            {
                data = null; // System.gc();
                return true;
            }
        }

        data = null; // System.gc();
        return false;
    }

首先获取所有记录并遍历它以搜索记录。但我有成千上万的记录,我只需要一些基于标准有什么方法可以解决这个问题?我不想遍历数千条记录来获得10条记录。

我对UI部分感到困惑的另一件事是LWUIT更好或JSR更好实现?

2 个答案:

答案 0 :(得分:2)

您在问题中谈论的代码是来自answer的方法。我大约一年前开发了这个代码,仅用于搜索目的。 RMS的基础是平面文件的结构化版本。您无法在RMS上触发查询。没有用于从RMS搜索记录的内置方法。这就是经过多次研发后的原因。我开发了上面的代码。

答案 1 :(得分:0)

如果您经常致电SearchRecord,可以将String [] data作为属性。这会导致您的方法的版本更小:

public boolean SearchRecord(String rec, int pos )
{
    rec = rec.substring(0, pos).trim();
    for ( int i = 0 ; i < this.data.length ; i++ )
    {
        String comp = this.data[i].substring(0, pos);
        if ( rec.equals(comp.trim()) )
        {
            return true;
        }
    }

    return false;
}