public void insertUser(User user) {
SQLiteDatabase db = getWritableDatabase();
ContentValues values = new ContentValues();
values.put(“name”, user.getName());
values.put(“age”, user.getAge());
db.insert(“user”, null, values);
db.close();
}
public List getAllUsers() {
List userList = new ArrayList();
網頁封裝工具安卓版 SQLiteDatapp封裝工具安卓abase db = getReadableDatabase();
Cursor cursor = db.query(“user”, null, null, null, null, null, null);
if (cursor != null && cursor.moveToFirst()) {
do {
int id = cursor.getInt(cursor.getColumnIndex(“id”));
String name = cursor.getString(cursor.getColumnIndex(“name”));
int age = cursor.getInt(cursor.getColumnIndex(“age”));
User user = new User(id, name, age);
userList.add(user);
} while (cursor.moveToNext());
cursor.close();
}
db.close();
return userList;
}
}
“`
在上面的代碼中,`DatabaseHelper`繼承自`SQLiteOpenHelper`,并實現了`onCreate`和`onUpgrade`方法用于創建和升級數據庫表格。其中`onCreate`方法在第一次創建數據庫時調用,用于創建表格;`onUpgrade`方法在數據庫版本發生變化時調用,用于更新表格結構。
通過`getInstance`方法可以獲取到`DatabaseHelper`的實例,確保全局只有一個數據庫對象。這個方法使用了雙重檢驗鎖的單例模式,保證了在多線程環境中獲取實例的安全性。
數據庫的基本操作方法如`insertUser`和`getAllUsers`用于插入數據和查詢數據。其中,`insertUser`方法將User對象的數據插入到user表格中,`getAllUsers`方法查詢user表格中的所有數據并返回一個List列表。
使用了封裝好的數據庫工具類后,我們在應用中就可以方便地進行數據庫操作,不需要每次都寫復雜的SQL語句和數據庫對象的創建和關閉操作。
封裝數據庫工具類可以提高代碼的可維護性和可復用性,將數據庫操作的細節封裝起來,讓業務代碼更加清晰簡潔。同時,數據庫工具類也可以加入一些擴展方法,如更新數據、刪除數據等,根據實際需求進行拓展。