⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 model.java

📁 应用RMS实现用户自动登陆功能
💻 JAVA
字号:
/*
 * Created on 2004-11-4
 *
 * TODO To change the template for this generated file go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
package com.j2medev.autologin;

import javax.microedition.rms.*;
import java.io.*;

/**
 * @author P2800
 * 
 * TODO To change the template for this generated type comment go to Window -
 * Preferences - Java - Code Style - Code Templates
 */
public class Model
{
    private RecordStore accountStore;
    public static final String RNAME = "accountstore";

    public Model()
    {
        try
        {
            accountStore = RecordStore.openRecordStore(RNAME, true);
        } catch (RecordStoreException e)
        {
            e.printStackTrace();
        }
    }

    public void closeRecordStore()
    {
        try
        {
            accountStore.closeRecordStore();
        } catch (RecordStoreException e)
        {
            e.printStackTrace();
        }
    }

    public void saveAccount(Account account)
    {
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        DataOutputStream dos = new DataOutputStream(baos);
        try
        {
            account.serialize(dos);
            byte[] data = baos.toByteArray();
            accountStore.addRecord(data, 0, data.length);
            baos.close();
        } catch (IOException e)
        {
            e.printStackTrace();
        } catch (RecordStoreException e)
        {
            e.printStackTrace();
        }

    }

    public Account getAccount(int recordID)
    {

        try
        {
            if (accountStore.getNumRecords() > 0)
            {
                byte[] data = accountStore.getRecord(recordID);
                ByteArrayInputStream bais = new ByteArrayInputStream(data);
                DataInputStream dis = new DataInputStream(bais);
                Account account = Account.deserialize(dis);
                bais.close();
                return account;
            }
            return null;

        } catch (IOException e)
        {
            return null;
        } catch (RecordStoreException e)
        {
            return null;
        }
    }

    public void savePreference(Preference preference)
    {
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        DataOutputStream dos = new DataOutputStream(baos);
        try
        {
            preference.serialize(dos);
            byte[] data = baos.toByteArray();
            accountStore.addRecord(data, 0, data.length);
            baos.close();
            
        } catch (IOException e)
        {
            e.printStackTrace();
        } catch (RecordStoreException e)
        {
            e.printStackTrace();
        }

    }

    public Preference getPreference(int recordID)
    {
        try
        {
            if (accountStore.getNumRecords() > 0)
            {
                byte[] data = accountStore.getRecord(recordID);
                ByteArrayInputStream bais = new ByteArrayInputStream(data);
                DataInputStream dis = new DataInputStream(bais);
                Preference preference = Preference.deserialize(dis);
                bais.close();
                return preference;
            }
            return null;
        } catch (IOException e)
        {
            return null;
        } catch (RecordStoreException e)
        {
            return null;
        }
    }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -