SQLiteDatabase

public class Person {
    long id;
    String name;
    int age;

    public Person(long id, String name, int age) {
        this.id = id;
        this.name = name;
        this.age = age;
    }

    public Person() {
    }

    @Override
    public String toString() {
        return "Person{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", age=" + age +
                '}';
    }

    public long getId() {
        return id;
    }

    public void setId(long id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
}
public class DBHelper extends SQLiteOpenHelper {

    private static final String name = "person.db";
    private static final SQLiteDatabase.CursorFactory factory = null;
    private static final int version = 1;

    public DBHelper(Context context) {
        super(context, name, factory, version);
    }

    @Override
    public void onCreate(SQLiteDatabase sqLiteDatabase) {
        String sql = "create table person(id integer primary key autoincrement,name varchar,age integer)";
        sqLiteDatabase.execSQL(sql);
    }

    @Override
    public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {

    }
}
public class PersonDao {
    DBHelper helper = null;

    public PersonDao(Context context) {
        super();
        this.helper = new DBHelper(context);
    }

    public long add(Person person) {
        SQLiteDatabase db = helper.getWritableDatabase();
        ContentValues cv = new ContentValues();
        cv.put("id", person.getId());
        cv.put("name", person.getName());
        cv.put("age", person.getAge());
        long result = db.insert("person", null, cv);
        db.close();
        return result;
    }

    public int delete(int id) {
        SQLiteDatabase db = helper.getWritableDatabase();
        int result = db.delete("person", "id = ?", new String[]{String.valueOf(id)});
        db.close();
        return result;
    }

    public int update(Person person) {
        SQLiteDatabase db = helper.getWritableDatabase();
        ContentValues values = new ContentValues();
        values.put("id",person.getId());
        values.put("name",person.getName());
        values.put("age",person.getAge());
        int result = db.update("person", values, "id = ?", new String[]{String.valueOf(person.getId())});
        db.close();
        return result;
    }

    public Person find(int id) {
        SQLiteDatabase db = helper.getReadableDatabase();
        Cursor cursor = db.query("person", null, "id = ?", new String[]{String.valueOf(id)}, null, null, null, null);
        Person person = null;
        if (cursor.moveToNext()) {
            int personId = cursor.getInt(cursor.getColumnIndex("id"));
            String personName = cursor.getString(cursor.getColumnIndex("name"));
            int personAge = cursor.getInt(cursor.getColumnIndex("age"));
            person = new Person();
            person.setId(personId);
            person.setName(personName);
            person.setAge(personAge);
        }
        db.close();
        return person;
    }

    public ArrayList<Person> findAll() {
        ArrayList<Person> arrayList = new ArrayList<>();
        Person person = null;
        SQLiteDatabase db = helper.getReadableDatabase();
        Cursor cursor = db.query("person", null, null, null, null, null, null);
        while (cursor.moveToNext()) {
            int personId = cursor.getInt(cursor.getColumnIndex("id"));
            String personName = cursor.getString(cursor.getColumnIndex("name"));
            int personAge = cursor.getInt(cursor.getColumnIndex("age"));
            person = new Person();
            person.setId(personId);
            person.setName(personName);
            person.setAge(personAge);
            arrayList.add(person);
        }
        db.close();
        return arrayList;
    }
}

 

posted @ 2015-10-27 08:57  一路向北中  阅读(198)  评论(0)    收藏  举报