Laboratoriyaning amaliy qismi.
Usullarning tavsifi:
void addContact(Contact contact) – yangi foydalanuvchi kontaktlarini ma’lumotlar bazasiga saqlash imkonini beradi;Contact getContact(int id) – kontaktlarni id bo‘yicha olish imkonini beradi;List getAllContacts() – ma’lumotlar bazasidan barcha kontaktlarni olish imkonini beradi;int getContactsCount () - ma'lumotlar bazasida joylashgan kontaktlar sonini olish imkonini beradi; int updateContact(Contact contact) - kontaktni yangilash imkonini beradi; void deleteContact(Contact contact) - kontaktni o‘chirish imkonini beradi; void deleteAll() - ruxsat beradi barcha kontaktlarni o‘chirib tashlashingiz kerak.
Endi biz ushbu interfeysni amalga oshirishimiz kerak, lekin avval biz SQLiteOpenHelper dan meros olamiz.
To‘liq sinf quyidagicha ko‘rinadi:
paketi com.devcolibri.DBandroid;
import android.content.ContentValues;
android.content.Context import;
android.database.Cursor import;
android.database.sqlite.SQLiteDatabase import;
android.database.sqlite.SQLiteOpenHelperni import qilish;
import java.util.ArrayList;
import java.util.List;
umumiy sinf DatabaseHandler SQLiteOpenHelper dasturini kengaytiradi IDatabaseHandler {
xususiy statik yakuniy int DATABASE_VERSION = 1;
xususiy statik yakuniy string DATABASE_NAME = "contactsManager";
xususiy statik yakuniy String TABLE_CONTACTS = "kontaktlar";
xususiy statik final String KEY_ID = "id";
xususiy statik yakuniy String KEY_NAME = "ism";
xususiy statik final String KEY_PH_NO = "telefon_raqami";
umumiy DatabaseHandler (kontekst konteksti) {
super(kontekst, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate (SQLiteDatabase JDB) {
CREATE_CONTACTS_TABLE satri = "JADVAL YARAT" + TABLE_CONTACTS + "("
+ KEY_ID + " INTEGER PRIMARY KEY," + KEY_NAME + " TEXT,"
+ KEY_PH_NO + "TEXT" + ")";
db.execSQL (CREATE_CONTACTS_TABLE);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("AGAR MAVJUD BO‘LSA JADVALNI TO‘CHIRISH " + TABLE_CONTACTS);
onCreate(jB);
}
@Override
public void addContact(Aloqa aloqasi) {
SQLiteDatabase db = this.getWritableDatabase();
ContentValues qiymatlari = yangi ContentValues();
values.put(KEY_NAME, contact.getName());
values.put(KEY_PH_NO, contact.getPhoneNumber());
db.insert(TABLE_CONTACTS, null, qiymatlar);
db.close();
}
@Override
umumiy kontakt getContact(int id) {
SQLiteDatabase db = this.getReadableDatabase();
Kursor kursori = db.query(TABLE_CONTACTS, yangi string[] { KEY_ID,
KEY_NAME, KEY_PH_NO }, KEY_ID + "=?",
new String[] { String.valueOf(id) }, null, null, null, null);
agar (kursor!= null){
cursor.moveToFirst();
}
Aloqa kontakti = yangi Kontakt(Integer.parseInt(cursor.getString(0)), cursor.getString(1), cursor.getString(2));
aloqani qaytarish;
}
@Override
umumiy ro‘yxat getAllContacts() {
List contactList = new ArrayList();
String selectQuery = "SELECT * FROM" + TABLE_CONTACTS;
SQLiteDatabase db = this.getWritableDatabase();
Kursor kursori = db.rawQuery(selectQuery, null);
agar (cursor.moveToFirst()) {
qil {
Aloqa uchun kontakt = yangi kontakt();
contact.setID(Integer.parseInt(cursor.getString(0)));
contact.setName(cursor.getString(1));
contact.setPhoneNumber(cursor.getString(2));
contactList.add(kontakt);
} while (cursor.moveToNext());
}
kontaktlar ro‘yxatini qaytarish;
}
Laboratoriya ishlarini bajarish uchun vazifalar:
Klaviaturada tez yozishni o‘rgatuvchi dastur algoritmini ishlab chiqish
Amaliy san'at muzeyi dasturini ishlab chiqish
Dostları ilə paylaş: |