日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

使用 greenDao 框架 操作数据库

發布時間:2024/9/21 数据库 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用 greenDao 框架 操作数据库 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

0.效果圖

步驟:

1.新建java項目,生成實體類等代碼.需要的jar包:  freemarker-2.3.10.jar , greendao-generator-1.3.1.jar

import java.io.IOException;import de.greenrobot.daogenerator.DaoGenerator; import de.greenrobot.daogenerator.Entity; import de.greenrobot.daogenerator.Schema;public class Test1 {public static void main(String[] args) throws IOException, Exception {//第一個參數用來更新數據庫版本號,第二個參數為要生成的DAO類所在包路徑Schema schema = new Schema(1, "de.bvb.db");//創建表 addNote(schema);//設置生成的文件文件存放的位置 new DaoGenerator().generateAll(schema, "./src");}private static void addNote(Schema schema) {Entity note = schema.addEntity("Student");//表名note.addIdProperty();//自增字段note.addStringProperty("name").notNull();note.addIntProperty("age");} }

2.android項目代碼 (db包下面代碼為java項目生成的)

2.1 MyApplication中對數據庫進行初始化的代碼

private static DaoMaster daoMaster;private static DaoSession daoSession;//取得DaoMasterpublic static DaoMaster getDaoMaster(Context context) {if (daoMaster == null) {DaoMaster.OpenHelper helper = new DaoMaster.DevOpenHelper(instance, "dbName", null); //dbName 為數據庫名daoMaster = new DaoMaster(helper.getWritableDatabase());}return daoMaster;}//取得DaoSessionpublic static DaoSession getDaoSession() {if (daoSession == null) {if (daoMaster == null) {daoMaster = getDaoMaster(instance);}daoSession = daoMaster.newSession();}return daoSession;}

2.2DBHelper代碼

package de.bvb.util;import java.util.List;import android.content.Context; import de.bvb.MyApplication; import de.bvb.db.DaoSession; import de.bvb.db.Student; import de.bvb.db.StudentDao; import de.greenrobot.dao.query.QueryBuilder;public class DBHelper {private static DBHelper instance;private StudentDao studentDao;private DBHelper() {}//單例public static DBHelper getInstance() {if (instance == null) {instance = new DBHelper();DaoSession daoSession = MyApplication.getDaoSession();instance.studentDao = daoSession.getStudentDao();}return instance;}public void add(Student student) {studentDao.insert(student);}public void update(Student student) {studentDao.update(student);}public void delete(Student student) {studentDao.delete(student);}public List<Student> query() {return studentDao.queryBuilder().list();} }

3.調用的方法

@Overridepublic void onClick(View v) {Student student = new Student();switch (v.getId()) {case R.id.btnAdd:student.setName(etName.getText().toString().trim());student.setAge(Integer.parseInt(etAge.getText().toString().trim()));DBHelper.getInstance().add(student);break;case R.id.btnUpdate:student.setId(Long.parseLong(tvId.getText().toString().trim()));student.setName(etName.getText().toString().trim());student.setAge(Integer.parseInt(etAge.getText().toString().trim()));DBHelper.getInstance().update(student);break;case R.id.btnDelete:student.setId(Long.parseLong(tvId.getText().toString().trim()));student.setName(etName.getText().toString().trim());student.setAge(Integer.parseInt(etAge.getText().toString().trim()));DBHelper.getInstance().delete(student);break;case R.id.btnQuery:list = DBHelper.getInstance().query();adapter.setData(list);break;}}

4.完整代碼(基于eclipse)

轉載于:https://www.cnblogs.com/Westfalen/p/6131905.html

總結

以上是生活随笔為你收集整理的使用 greenDao 框架 操作数据库的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。