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;
}
}