dhroid - Dhdb orm簡化sqlite資料庫操作

來源:互聯網
上載者:User

標籤:

db.delete(student);

 

android資料庫其實使用的不多,dhroid架構中的網路緩衝使用了資料庫我就寫了也寫了一個資料庫操作工具
dhroid 資料庫基本還是單表操作多,為了簡單我只做了單表,那些級聯,懶載入,什麼的分兩個操作區解決吧

初始化在application中基於ioc的配置

//資料庫初始化DhDB db=IocContainer.getShare().get(DhDB.class);db.init("dhdbname", Const.DATABASE_VERSION);

 


如果你的資料庫在sd卡上,你可以 

db.initInSD("檔案夾位置", "dhdbname", Const.DATABASE_VERSION);bean定義@Entity(table="student")public class Student {@Column(pk=true)//主鍵不能為基本類型public Long id;public String name;@Column(name="num_no")public String num;@Column(name="create_time")public Date createTime;public int age;public int sex;public boolean dangyuang;@NoColumnpublic String temp;//setget...}

 


@Entity(table="student") 表示這個對象進行持久化,可以不添加,預設都可以,預設對象名和表名相同


預設的屬性都會被持久化的預設列名和屬性名稱相同
@Column(pk=true)定義主鍵
@Column(name="num_no")定義列名

@NoColumn 表示不參加持久化

屬性支援基礎資料型別 (Elementary Data Type)

擷取Dhdb對象下面我是用的ioc 你也可以製作單例

@InjectDhDB db;  儲存和更新if(student == null){student=new Student();isnew=true;}student.setName(nameV.getText().toString());student.setNum(numV.getText().toString());student.setSex(Integer.parseInt(sexV.getText().toString()));student.setAge(Integer.parseInt(ageV.getText().toString()));student.setDangyuang(dangyuanV.getText().toString().equals("1")?true:false);student.setCreateTime(new Date());if(isnew){db.save(student);}else{db.update(student);}

 

刪除
查詢(基本的sql你還是需要瞭解的啊)

List<Student> list=db.queryList(Student.class, ":name like ? or :num like ?","%name%","%num%");

 


:num 已:開頭的預留位置表示對象屬性(這裡的num屬性對應資料庫裡的num_no)

這樣就可以使用對象屬性進行查詢,而不用瞭解資料庫
? 預留位置指資料用後面的資料替換 方法支援多個參數
瞭解spring jdbctemplete 的應該很喜歡這樣的寫法


增刪改查都都有了是不是很好用啊

dhroid - Dhdb orm簡化sqlite資料庫操作

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.