在StudentDao類文件中代碼如下:
public class StudentDao {
Context context;
final String tableName = "student";
public StudentDao(Context mContext) {
context = mContext;
}
// 添加
public void addStudent(Student student) {
DbUtil mDbUtil = new DbUtil(context);
SQLiteDatabase mSQLiteDatabase = mDbUtil.getWritableDatabase();
// 執行insert語句的方式
ContentValues values = new ContentValues();
values.put("id", student.getId());
values.put("age", student.getAge());
values.put("name", student.getName());
mSQLiteDatabase.insert(tableName, null, values);
// 關閉
mSQLiteDatabase.close();
mDbUtil.close();
}
}
在DbUtil類文件中代碼如下:
public class DbUtil extends SQLiteOpenHelper {
//創建庫文件
public DbUtil(Context context) {
super(context, "test.db", null, 2);
}
//創建表
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table student(id int,name varchar(20))");
db.execSQL("create table teacher(id int,name varchar(20))");
Log.e("DbUtil", "onCreate");
}
}
問題1:在StudentDao類中,StudentDao構造函數有什麼作用(可以說詳細一點嗎)?
問題2:在StudentDao類中,這一句代碼DbUtil mDbUtil = new DbUtil(context)這一句代碼是創建一個數據庫嗎?
問題1:在StudentDao類中,StudentDao構造函數有什麼作用?
就是傳進來一個數據庫對象(如test.db),然後看情況調用裡面的方法(addStudent)
問題2:在StudentDao類中,這一句代碼DbUtil mDbUtil = new DbUtil(context)這一句代碼是創建一個數據庫嗎?
創建context這個對象(test.db)的數據庫