Android中的sqlite简单示例

来源:互联网 发布:java开发语言 编辑:程序博客网 时间:2024/05/22 15:17

Android中的sqlite简单示例

Android中的sqlite比较简单,只需写一个BDHelper继承SQLiteOpenHelper 类,DBManager管理类,再写一个数据类,在此我写的是已PolePoint作为数据类。

首先是PolePoint类:

public class PolePoint{    /**     *      */    public int _id;    public String PoleId;    public String PoleAdress;    public PolePoint(){    }    public PolePoint(String poleId,String poleAddress){        this.PoleId = poleId;        this.PoleAdress = poleAddress;    }}

然后是BDHelper类

public class DBHelper extends SQLiteOpenHelper{    private static final String DATABASE_NAME = "test.db";    private static final int DATABASE_VERSION = 1;    public DBHelper(Context context){        super(context, DATABASE_NAME, null, DATABASE_VERSION);    }    @Override    public void onCreate(SQLiteDatabase db) {        // TODO Auto-generated method stub        db.execSQL("create table if not exists polepoint"+                "(_id integer,PoleId varchar,PoleAdress varchar)");    }    @Override    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {        // TODO Auto-generated method stub        db.execSQL("ALTER TABLE person ADD COLUMN other STRING");    }

再就是DBManager类

public class DBManager {    private DBHelper helper;    private SQLiteDatabase db;    public DBManager(Context context){        helper = new DBHelper(context);        db = helper.getWritableDatabase();    }    public void add(List<PolePoint> list){        db.beginTransaction();        try {            for (PolePoint pp:list) {                db.execSQL("insert into polepoint values(null,?,?)",new Object[]{pp.PoleId,pp.PoleAdress});            }            db.setTransactionSuccessful();        } catch (Exception e) {            // TODO: handle exception        }finally{            db.endTransaction();        }    }//  public void updateAdress(PolePoint pp){//      ContentValues cv = new ContentValues();//      cv.put("PoleId", pp.PoleId);//      db.update("polepoint", cv, "PoleAdress = ?", new String[]{pp.PoleAdress});//  }//  public void deleteOldPerson(Person person){//      db.delete("person", "age>=?", new String[]{String.valueOf(person.age)});//      //  }    public List<PolePoint> query(){        ArrayList<PolePoint>persons = new ArrayList<PolePoint>();        Cursor c = queryTheCursor();        while (c.moveToNext()) {            PolePoint pp = new PolePoint();            pp._id = c.getInt(c.getColumnIndex("_id"));            pp.PoleId = c.getString(c.getColumnIndex("PoleId"));            pp.PoleAdress = c.getString(c.getColumnIndex("PoleAdress"));            persons.add(pp);        }        c.close();        return persons;    }    public Cursor queryTheCursor(){        Cursor c = db.rawQuery("select * from polepoint", null);        return c;    }    void closeDB(){        db.close();    }}

最后是MainActivity

public class MainActivity extends Activity {    private DBManager mgr;    ConnectServerIml iml;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        mgr = new DBManager(this);    }    @Override    protected void onDestroy() {        // TODO Auto-generated method stub        super.onDestroy();        mgr.closeDB();    }    public void add(View view)    {        ArrayList<Person> persons = new ArrayList<Person>();        //这里我用的是网上的数据  //    new Thread(new Runnable() {//          //          @Override//          public void run() {//              // TODO Auto-generated method stub//              String url = ShareData.CHARGE_SEARCH;//              iml = new ConnectServerIml();//              String result = iml.ConcernByClientGet(url);//              ArrayList<PolePoint>list = JsonParse.search(result);//              mgr.add(list);//          }//      }).start();        PolePoint pp1= new PolePoint ("009c067b-b044-49df-84e4-70d66566c8a1", "琴台大道附近");        PolePoint pp2= new PolePoint ("013be44f-194e-464a-8e3e-307380c767cb", "航空路15附66附近");        persons.add(pp1);        persons.add(pp2);//        mgr.add(persons);    }     public void query(View view){        List<PolePoint>list = mgr.query();        for (PolePoint pp:list) {            Log.i("Name and Age", pp.PoleId+","+pp.PoleAdress);        }    }

这个比较简单,在此就不截图了。

0 0
原创粉丝点击