Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 關於android開發 >> OrmLite數據庫的使用方法,ormlite數據庫

OrmLite數據庫的使用方法,ormlite數據庫

編輯:關於android開發

OrmLite數據庫的使用方法,ormlite數據庫


第一步:導入架包     1、將orm的兩個支持包放入project視圖下的你的工程的lib目錄裡(這兩個JAR包網上都有,GitHub上最新)     2、添加依賴:在file文件目錄下的project structure裡選擇你的APP,選擇depedence目錄 點擊加號選擇第二個library depedence選擇lib目錄下點擊選擇添加依賴     3、導入JAR包成功後兩個jar文件是可以點開的,這就表明添加成功     第二步:使用ormList創建數據庫;     1、首先要生成一個存放你各種屬性的一個屬性類,在類的開始添加注解         表明這是一張表,名字叫做cardImg         然後每條屬性都應添加注解,表明是表單中的每一列         到這裡屬性類就算完美的建成了,次數省略了每條屬性的get與set方法以及有參和無參構造方法     2、然後就要創建數據庫了,這裡與基本的SQList數據庫的創建方法也沒有什麼大樣,這裡只附上代碼,大家自己領悟
public class DataBaseHelper extends OrmLiteSqliteOpenHelper {
private static final String DB_NAME="biying.db";
private static final int DB_VERSON=1;
private DataBaseHelper(Context mContext){
super(mContext,DB_NAME,null,DB_VERSON);
}
/**
* 基本單例模式:
* 1、先把構造函數私有化
* 2、對外提供一個靜態方法
* 3、在方法中判斷如果已經存在就不再創建,如果不存在再創建
* 這樣保證永遠只有一個DataBaseHelper對象
* 4、為了線程安全,需要在方法前提供一個線程安全關鍵字synchronized
* 如果一個調用時,另一個就不允許調用
*/
private static DataBaseHelper dataBaseHelper;
public synchronized static DataBaseHelper getInstance(Context mContext){
if (dataBaseHelper == null) {
dataBaseHelper = new DataBaseHelper(mContext);
}
return dataBaseHelper;
}

@Override
public void onCreate(SQLiteDatabase sqLiteDatabase, ConnectionSource connectionSource) {
//創建表
try {
//CardImg
TableUtils.createTableIfNotExists(connectionSource, CardImg.class);

} catch (SQLException e) {
e.printStackTrace();
}
}

@Override
public void onUpgrade(SQLiteDatabase sqLiteDatabase, ConnectionSource connectionSource, int i, int i1) {
//刪除表
try {
TableUtils.dropTable(connectionSource,CardImg.class,true);
} catch (SQLException e) {
e.printStackTrace();
}
}

}
    3、創建好屬性類以及創建好了數據庫之後,就要根據屬性類來專門寫一個針對於此屬性類的一個數據庫操作對象了, 大家一定要記住,在使用orm的時候最好就是一個表單對應一個數據庫操作對象,這樣方便操作也不會混淆,這裡就只附上代碼,大家自己領悟。
package com.jereh.biyingapplication.dao;

import android.content.Context;

import com.j256.ormlite.dao.Dao;
import com.j256.ormlite.stmt.DeleteBuilder;
import com.jereh.biyingapplication.db.DataBaseHelper;
import com.jereh.biyingapplication.entity.CardImg;
import com.jereh.biyingapplication.entity.Images;

import java.sql.SQLException;
import java.util.List;

/**
* Created by zhangdi on 2016/8/31.
*/
public class CardImgDao {
private Dao<CardImg,Integer> cardImgDao;
public CardImgDao(Context mContext){
DataBaseHelper dataBaseHelper = DataBaseHelper.getInstance(mContext);
try {
cardImgDao = dataBaseHelper.getDao(CardImg.class);
} catch (SQLException e) {
e.printStackTrace();
}
}

/**
* 添加一條數據,一個對象
* @param cardImg
* @return
*/
public long addCardImg(CardImg cardImg){
int id =0;
try {
id = cardImgDao.create(cardImg);
} catch (SQLException e) {
e.printStackTrace();
}
return id;
}

public void addAll(List<CardImg> images){
for (CardImg img:images){
addCardImg(img);
}
}
/**
* 查詢表中所有屬性
* @return 表的集合
*/
public List<CardImg> findAll(){
try {
return cardImgDao.queryForAll();
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
/**
* 根據對象刪除某條數據
* @param cardImg
*/
public void delete(CardImg cardImg){
DeleteBuilder deleteBuilder = cardImgDao.deleteBuilder();
try {
deleteBuilder.where().eq("img",cardImg.getImg());
deleteBuilder.delete();
} catch (SQLException e) {
e.printStackTrace();
}
}

/**
* 刪除所有數據
* @param images
*/
public void removeAll(List<CardImg> images){
for (CardImg img:images){
delete(img);
}
}
}
    4、至此使用orm創建數據庫的方法基本上算是圓滿成功了,在實體類中需要調用的時候只需要把數據庫操作對象即你寫的 那個dao給new出來即可通過數據庫操作對象來對數據庫中的這張表單實現增刪改查等一系列的操作了。   關於ormlite的使用就介紹到這裡,希望對大家能有所幫助!

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved