1、实验概述
一个简单的个人记事本软件,它是基于安卓平台实现的的个人记事本软件,使用SQlite实现存取。具有简单的实用性,分为三个功能。一是添加新的记事项、二是浏览所有记事项、三是删除指定的记事项。
2、实验平台、工具
采用Eclipse开发工具: Eclipse IDE for Java Developers;
Version: Juno Service Release 1
Java语言:JDK1.7
在Android平台下开发:Android SDK 10 Platform API
3、实验设计
本个人记事本软件一共有三个界面。第一个是欢迎界面,也就是总控制界面,可以在这里使用全部功能。第二个是记事列表界面,显示数据库内全部记事项。第三个是单个记事项编辑界面,可以编辑已有项或者新建项。
使用SQlite数据库存取数据。实现增、删、改功能。在Activity的控制下和数据库进行数据交流然后在Layout中显示内容。
4、实验步骤
SQlite数据库类:
privatestaticclassDatabaseHelperextendsSQLiteOpenHelper {
DatabaseHelper(Context context) {
super(context,DATABASE_NAME,null,DATABASE_VERSION);
}
@Override
publicvoidonCreate(SQLiteDatabase db) {
db.execSQL(DATABASE_CREATE);
}
@Override
publicvoidonUpgrade(SQLiteDatabase db,intoldVersion,intnewVersion) {
db.execSQL("DROP TABLE IF EXISTS diary");
onCreate(db);
}
}
publicDiaryDbAdapter open()throwsSQLException {
mDbHelper=newDatabaseHelper(mCtx);
mDb = mDbHelper.getWritableDatabase();
returnthis;
}
增加记录数据库操作:
publiclongcreateDiary(String title, String body) {
ContentValues initialValues =newContentValues();
initialValues.put(KEY_TITLE, title);
initialValues.put(KEY_BODY, body);
Calendar calendar = Calendar.getInstance();
String created = calendar.get(Calendar.YEAR) + "年"
+ calendar.get(Calendar.MONTH) + "月"
+ calendar.get(Calendar.DAY_OF_MONTH) + "日"
+ calendar.get(Calendar.HOUR_OF_DAY) + "时"
+ calendar.get(Calendar.MINUTE) + "分";
initialValues.put(KEY_CREATED, created);
returnmDb.insert(DATABASE_TABLE,null, initialValues);
}
删除记录数据库操作:
publicbooleandeleteDiary(longrowId) {
returnmDb.delete(DATABASE_TABLE,KEY_ROWID+ "=" + rowId,null) > 0;
}
取得特定记录数据库操作:
publicCursor getAllNotes() {
returnmDb.query(DATABASE_TABLE,newString[] {KEY_ROWID,KEY_TITLE,
KEY_BODY,KEY_CREATED},null,null,null,null,null);
}
修改项数据库操作:
publicbooleanupdateDiary(longrowId, String title, String body) {
ContentValues args =newContentValues();
args.put(KEY_TITLE, title);
args.put(KEY_BODY, body);
Calendar calendar = Calendar.getInstance();
String created = calendar.get(Calendar.YEAR) + "年"
+ calendar.get(Calendar.MONTH) + "月"
+ calendar.get(Calendar.DAY_OF_MONTH) + "日"
+ calendar.get(Calendar.HOUR_OF_DAY) + "时"
+ calendar.get(Calendar.MINUTE) + "分";
args.put(KEY_CREATED, created);
returnmDb.update(DATABASE_TABLE, args,KEY_ROWID+ "=" + rowId,null) > 0;
}