溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Android中如何利用LitePal對數(shù)據(jù)庫進行操作

發(fā)布時間:2022-04-11 16:33:24 來源:億速云 閱讀:231 作者:iii 欄目:編程語言

這篇“Android中如何利用LitePal對數(shù)據(jù)庫進行操作”文章的知識點大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Android中如何利用LitePal對數(shù)據(jù)庫進行操作”文章吧。

首先在app/build.grade文件中編輯

dependencies{
...
conmpile'org.litepal.android:core:1.5'
..
}

隨后創(chuàng)建一個assets目錄,創(chuàng)建一個litepal.xml

<?xml version="1.0" encoding="utf-8"?>    
<litepal>    
    <dbname value="AbcStore" ></dbname>    
    <version value="2" ></version>    
    <list>    
        <mapping class="com.example.litepaltest.Book"></mapping>    
    </list>    
</litepal>

然后在AndroidManifest.xml中添加代碼

android:name="org.litepal.litePalApplication"

LitePal時對象關(guān)系映像(ORM)的模式,簡單來說,就是將面向?qū)ο蟮恼Z言和面向?qū)ο蟮臄?shù)據(jù)庫中建立一種映射關(guān)系,也就是說可以用面向?qū)ο蟮乃季S來操作數(shù)據(jù)庫而不是再用SQLiteOpenHelper繁瑣的步驟

創(chuàng)建一個Abc類

public class Abc extends DataSupport {    
private int id;      
private double price;    
private int pages;    
private String name;       
public int getId() {    
return id;    
}    
public void setId(int id) {    
this.id = id;    
}    
public int getPages() {    
return pages;    
}    
public void setPages(int pages) {    
this.pages = pages;    
}    
public String getName() {    
return name;    
}    
public void setName(String name) {    
this.name = name;    
}    
}

然后在litepal.xml中添加

<?xml version="1.0" encoding="utf-8"?>    
<litepal>    
    <dbname value="AbcStore" ></dbname>    
    <version value="1" ></version>    
    <list>    
        <mapping class="com.example.litepaltest.Abc"></mapping>    
    </list>    
</litepal>

然后來說說SQLiteOpenHelper的升級數(shù)據(jù)庫機制,每次執(zhí)行時都會drop掉數(shù)據(jù)庫,然后重新創(chuàng)建,drop數(shù)據(jù)庫的同時,里面的數(shù)據(jù)也丟失了,而在LitePal中升級數(shù)據(jù)庫只需要修改所需要的內(nèi)容,然后版本號加一,也就是

<?xml version="1.0" encoding="utf-8"?>    
<litepal>    
    <dbname value="AbcStore" ></dbname>    
    <version value="2" ></version>    
    <list>    
        <mapping class="com.example.litepaltest.Abc"></mapping>    
    </list>    
</litepal>

添加更新數(shù)據(jù)只需要,new一個Abc然后調(diào)用set就可以

public class MainActivity extends AppCompatActivity {    
    @Override    
    protected void onCreate(Bundle savedInstanceState) {    
        super.onCreate(savedInstanceState);    
        setContentView(R.layout.activity_main);    
        Button createDatabase = (Button) findViewById(R.id.create_database);    
        createDatabase.setOnClickListener(new View.OnClickListener() {    
            @Override    
            public void onClick(View v) {    
               Abc abc=new Abc();
               abc.setname("litepal");  
            }    
        });    
  }}

刪除數(shù)據(jù)則使用

DataSupport.deleteAll(Abc.class,"name=?","litepal")

查詢數(shù)據(jù)

list<Abc> abc=DateSupport.findAll(Abc.class);

以上就是關(guān)于“Android中如何利用LitePal對數(shù)據(jù)庫進行操作”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對大家有幫助,若想了解更多相關(guān)的知識內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI