日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線(xiàn)溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
Android數(shù)據(jù)庫(kù)共享連接的實(shí)現(xiàn)方法(android共享數(shù)據(jù)庫(kù)連接)

隨著移動(dòng)設(shè)備的普及,Android設(shè)備已經(jīng)成為人們?nèi)粘J褂玫闹饕K端。在Android應(yīng)用程序中,數(shù)據(jù)庫(kù)連接是常見(jiàn)的需求,而在多個(gè)應(yīng)用程序享數(shù)據(jù)庫(kù)連接也是一種常見(jiàn)的需求。本文將介紹在Android平臺(tái)中實(shí)現(xiàn)數(shù)據(jù)庫(kù)連接共享的方法。

Android數(shù)據(jù)存儲(chǔ)

在Android平臺(tái)上,數(shù)據(jù)存儲(chǔ)有多種方式,其中最常用的是SQLite數(shù)據(jù)庫(kù)。SQLite是一個(gè)輕量級(jí)的關(guān)系型數(shù)據(jù)庫(kù),簡(jiǎn)單易用,且支持多線(xiàn)程訪(fǎng)問(wèn)。同時(shí),Android也提供了SharedPreferences、文件存儲(chǔ)等簡(jiǎn)單的數(shù)據(jù)存儲(chǔ)方式,但是這些存儲(chǔ)方式的使用場(chǎng)景相對(duì)來(lái)說(shuō)比較有限。

在Android應(yīng)用程序的數(shù)據(jù)存儲(chǔ)中,需要注意以下幾個(gè)方面:

1. 數(shù)據(jù)的讀寫(xiě)權(quán)限

2. 數(shù)據(jù)的安全性

3. 數(shù)據(jù)的性能

為了滿(mǎn)足這些要求,需要使用合適的數(shù)據(jù)存儲(chǔ)方式,并將數(shù)據(jù)存儲(chǔ)在合適的位置。

Android應(yīng)用程序的數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)方式

Android提供了SQLiteOpenHelper和ContentProvider兩種常見(jiàn)的數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)方式。

SQLiteOpenHelper是一個(gè)幫助開(kāi)發(fā)者管理SQLite數(shù)據(jù)庫(kù)的工具類(lèi),可以幫助開(kāi)發(fā)者創(chuàng)建、升級(jí)和刪除數(shù)據(jù)庫(kù)。使用SQLiteOpenHelper可以簡(jiǎn)化代碼,提高效率。

ContentProvider是一個(gè)在應(yīng)用程序之間共享數(shù)據(jù)的機(jī)制。通過(guò)ContentProvider,應(yīng)用程序可以將數(shù)據(jù)暴露給其他應(yīng)用程序使用。ContentProvider提供了對(duì)數(shù)據(jù)的統(tǒng)一訪(fǎng)問(wèn)接口,可以通過(guò)Uri來(lái)訪(fǎng)問(wèn)數(shù)據(jù)。

Android應(yīng)用程序中的數(shù)據(jù)庫(kù)連接共享

現(xiàn)實(shí)開(kāi)發(fā)中,多個(gè)應(yīng)用程序可能需要對(duì)同一個(gè)數(shù)據(jù)庫(kù)進(jìn)行讀寫(xiě)操作,為了提高數(shù)據(jù)庫(kù)的訪(fǎng)問(wèn)效率,我們可以將數(shù)據(jù)庫(kù)連接共享,以減少連接數(shù)據(jù)庫(kù)的時(shí)間和資源開(kāi)銷(xiāo)。

在Android平臺(tái)上,實(shí)現(xiàn)數(shù)據(jù)庫(kù)連接共享的方法有多種,下面將從以下兩個(gè)方面進(jìn)行介紹:

1. 通過(guò)ContentProvider共享數(shù)據(jù)庫(kù)連接

2. 使用第三方工具庫(kù)進(jìn)行數(shù)據(jù)庫(kù)連接共享

1. 通過(guò)ContentProvider共享數(shù)據(jù)庫(kù)連接

ContentProvider是Android應(yīng)用程序之間共享數(shù)據(jù)的主要機(jī)制,我們可以通過(guò)ContentProvider來(lái)實(shí)現(xiàn)共享數(shù)據(jù)庫(kù)連接的需求。

具體實(shí)現(xiàn)方法如下:

1. 定義一個(gè)ContentProvider類(lèi),并在類(lèi)中創(chuàng)建一個(gè)SQLiteOpenHelper對(duì)象,負(fù)責(zé)連接和管理數(shù)據(jù)庫(kù)連接。

2. 在ContentProvider的onCreate()方法中創(chuàng)建SQLiteOpenHelper對(duì)象,獲取數(shù)據(jù)庫(kù)連接。

3. 在其他應(yīng)用程序中,通過(guò)ContentResolver對(duì)象和ContentProvider定義的Uri來(lái)讀寫(xiě)數(shù)據(jù),ContentProvider內(nèi)部獲取數(shù)據(jù)庫(kù)連接,執(zhí)行數(shù)據(jù)庫(kù)操作。

缺點(diǎn):ContentProvider需要對(duì)外暴露Uri接口,容易受到未授權(quán)的訪(fǎng)問(wèn)。

2. 使用第三方工具庫(kù)進(jìn)行數(shù)據(jù)庫(kù)連接共享

除了使用ContentProvider之外,我們還可以使用第三方工具庫(kù)來(lái)實(shí)現(xiàn)數(shù)據(jù)庫(kù)連接共享。目前比較常用的有GreenDAO和OrmLite這兩個(gè)工具庫(kù)。

這兩個(gè)工具庫(kù)都是開(kāi)源的,具有不同的優(yōu)點(diǎn)和特點(diǎn):

GreenDAO是一個(gè)輕量級(jí)的ORM工具,支持Android平臺(tái),可以將Java對(duì)象映射到SQLite數(shù)據(jù)庫(kù)中,提供方便快捷的數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)接口,同時(shí)還支持多線(xiàn)程訪(fǎng)問(wèn)。

OrmLite是一個(gè)更加全面的ORM工具庫(kù),支持Android和Java平臺(tái),不僅可以將Java對(duì)象映射到SQLite數(shù)據(jù)庫(kù)中,還支持其他類(lèi)型數(shù)據(jù)庫(kù)的訪(fǎng)問(wèn),例如MySQL和PostgreSQL等。

在使用第三方工具庫(kù)時(shí),需要在應(yīng)用中添加對(duì)應(yīng)的庫(kù)文件和依賴(lài)關(guān)系,同時(shí)還需要根據(jù)具體的要求進(jìn)行配置和使用。

本文介紹了在Android平臺(tái)中實(shí)現(xiàn)數(shù)據(jù)庫(kù)連接共享的方法。通過(guò)ContentProvider和第三方工具庫(kù),可以方便快捷地進(jìn)行數(shù)據(jù)庫(kù)連接共享,提高代碼效率和性能。在使用過(guò)程中,需要考慮數(shù)據(jù)的讀寫(xiě)權(quán)限、安全性和性能等方面,合理選擇數(shù)據(jù)存儲(chǔ)方式和具體實(shí)現(xiàn)方法。

成都網(wǎng)站建設(shè)公司-創(chuàng)新互聯(lián),建站經(jīng)驗(yàn)豐富以策略為先導(dǎo)10多年以來(lái)專(zhuān)注數(shù)字化網(wǎng)站建設(shè),提供企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計(jì),響應(yīng)式網(wǎng)站制作,設(shè)計(jì)師量身打造品牌風(fēng)格,熱線(xiàn):028-86922220

Android 怎么連接遠(yuǎn)程數(shù)據(jù)庫(kù)

一般是不會(huì)直接連接數(shù)據(jù)散襲辯庫(kù)的,就像我們?yōu)g覽禪搜網(wǎng)站一樣,沖缺也是通過(guò)后端程序連接數(shù)據(jù)庫(kù)的。若你需要的是嵌入數(shù)據(jù)庫(kù),那另外的說(shuō)法,MySQL提供嵌入式版本很輕量的Android 怎么連接遠(yuǎn)程數(shù)據(jù)庫(kù)

可以通過(guò)中間服務(wù), 比如一個(gè)站點(diǎn)開(kāi)漏鎮(zhèn)放一個(gè)地址yourdomain.com/android.aspx然后通過(guò)android發(fā)送請(qǐng)求到這個(gè)地址州搜襪,android.aspx根據(jù)請(qǐng)求的get/post數(shù)據(jù)進(jìn)行相冊(cè)激應(yīng)操作

看你的需求,webservice慢,適合互聯(lián)網(wǎng)app產(chǎn)品,jdbc直連省事,快,適合封閉內(nèi)網(wǎng)環(huán)境。

如何android多Activity間共享數(shù)據(jù)

Android應(yīng)用開(kāi)發(fā)中,給我們提供了5種數(shù)據(jù)的存儲(chǔ)方式

1 使用SharedPreferences存儲(chǔ)數(shù)據(jù)

2 文件存儲(chǔ)數(shù)據(jù)

3 SQLite數(shù)據(jù)庫(kù)存儲(chǔ)數(shù)據(jù)

4 使用ContentProvider存儲(chǔ)數(shù)據(jù)

5 網(wǎng)絡(luò)存儲(chǔ)數(shù)據(jù)

不同的業(yè)務(wù)邏輯,或者需求,用不同的實(shí)現(xiàn)方式

以下是這幾中數(shù)據(jù)存儲(chǔ)方式的說(shuō)明用及法,

之一種: 使用SharedPreferences存儲(chǔ)數(shù)據(jù)

SharedPreferences是Android平臺(tái)上一個(gè)輕量級(jí)的存儲(chǔ)類(lèi),主要是保存一些常用的配置比如窗口狀態(tài),

一般在Activity中 重載窗口狀態(tài)onSaveInstanceState保存一般使用SharedPreferences完成,

它提供了Android平臺(tái)常規(guī)的Long長(zhǎng) 整形、Int整形、String字符串型的保存。

它是什么樣的處理方梁宴式呢? SharedPreferences類(lèi)似過(guò)去Windows系統(tǒng)上的ini配置文件,但是它分為多種權(quán)限,

可以全局共享訪(fǎng)問(wèn),android123提示最終是以xml方式來(lái)保存,整體效率來(lái)看不是特別的高,

對(duì)于常規(guī)的輕量級(jí)而言比SQLite要好不少,如果真的存儲(chǔ)量不大可以考慮自己定義文件格式。

xml 處理時(shí)Dalvik會(huì)通過(guò)自帶底層的本地XML Parser解析,比如XMLpull方式,這樣對(duì)于內(nèi)存資源占用比較好。

它的本質(zhì)是基于XML文件存儲(chǔ)key-value鍵值對(duì)數(shù)據(jù),通常用來(lái)存儲(chǔ)一些簡(jiǎn)單的配置信息。

其存儲(chǔ)位置在/data/data//shared_prefs目錄下。

SharedPreferences對(duì)象本身只能獲取數(shù)據(jù)而不支持存儲(chǔ)和修改,存儲(chǔ)修改是通過(guò)Editor對(duì)象實(shí)現(xiàn)。

實(shí)現(xiàn)SharedPreferences存儲(chǔ)的步驟如下:

一、根據(jù)Context獲取SharedPreferences對(duì)象

二、利用edit()方法獲取Editor對(duì)象。

三、通過(guò)Editor對(duì)象存儲(chǔ)key-value鍵值對(duì)數(shù)據(jù)。

四、通過(guò)commit()方法提交數(shù)據(jù)。

下面是示例代碼:

public class MainActivity extends Activity {

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

//獲取SharedPreferences對(duì)象

Context ctx = MainActivity.this;

SharedPreferences sp = ctx.getSharedPreferences(“SP”, MODE_PRIVATE);

//存入數(shù)據(jù)

Editor editor = sp.edit();

editor.putString(“STRING_KEY”, “string”);

editor.putInt(“INT_KEY”, 0);

editor.putBoolean(“BOOLEAN_KEY”, true);

editor.commit();

//返回STRING_KEY的值

Log.d(“SP”, sp.getString(“STRING_KEY”, “none”));

//如果NOT_EXIST不存在,則返回值為”none”

Log.d(“SP”, sp.getString(“NOT_EXIST”, “none”));

}

}

這段代碼執(zhí)行過(guò)后,即在/data/data/com.test/shared_prefs目錄下生成了一個(gè)SP.xml文件,一個(gè)應(yīng)用可以創(chuàng)建多個(gè)這樣的xml文件。

SharedPreferences對(duì)象與SQLite數(shù)據(jù)庫(kù)相比,免去了創(chuàng)建數(shù)據(jù)庫(kù),創(chuàng)建表,寫(xiě)SQL語(yǔ)句等諸多操作,相對(duì)而言更加方便,簡(jiǎn)潔。

但是SharedPreferences也有其自身缺陷,比如其職能存儲(chǔ)boolean,int,float,long和String五種簡(jiǎn)單的數(shù)據(jù)類(lèi)型,比如滾行其無(wú)法進(jìn)行條件查詢(xún)等。

所以不論SharedPreferences的數(shù)據(jù)存儲(chǔ)操作是如何簡(jiǎn)單,它也大渣嘩只能是存儲(chǔ)方式的一種補(bǔ)充,而無(wú)法完全替代如SQLite數(shù)據(jù)庫(kù)這樣的其他數(shù)據(jù)存儲(chǔ)方式。

第二種: 文件存儲(chǔ)數(shù)據(jù)

關(guān)于文件存儲(chǔ),Activity提供了openFileOutput()方法可以用于把數(shù)據(jù)輸出到文件中,具體的實(shí)現(xiàn)過(guò)程與在J2SE環(huán)境中保存數(shù)據(jù)到文件中是一樣的。

文件可用來(lái)存放大量數(shù)據(jù),如文本、圖片、音頻等。

默認(rèn)位置:/data/data//files/***.***。

代碼示例:

public void save(){

try {

FileOutputStream outStream=this.openFileOutput(“a.txt”,Context.MODE_WORLD_READABLE);

outStream.write(text.getText().toString().getBytes());

outStream.close();

Toast.makeText(MyActivity.this,”Saved”,Toast.LENGTH_LONG).show();

} catch (FileNotFoundException e) {

return;

}

catch (IOException e){

return ;

}

}

openFileOutput()方法的之一參數(shù)用于指定文件名稱(chēng),不能包含路徑分隔符“/” ,如果文件不存在,Android 會(huì)自動(dòng)創(chuàng)建它。

創(chuàng)建的文件保存在/data/data//files目錄,如: /data/data/cn.itcast.action/files/itcast.txt ,

通過(guò)點(diǎn)擊Eclipse菜單“Window”-“Show View”-“Other”,在對(duì)話(huà)窗口中展開(kāi)android文件夾,

選擇下面的File Explorer視圖,然后在File Explorer視圖中展開(kāi)/data/data//files目錄就可以看到該文件。

openFileOutput()方法的第二參數(shù)用于指定操作模式,有四種模式,分別為:

Context.MODE_PRIVATE = 0

Context.MODE_APPEND = 32768

Context.MODE_WORLD_READABLE = 1

Context.MODE_WORLD_WRITEABLE = 2

Context.MODE_PRIVATE:為默認(rèn)操作模式,代表該文件是私有數(shù)據(jù),只能被應(yīng)用本身訪(fǎng)問(wèn),在該模式下,寫(xiě)入的內(nèi)容會(huì)覆蓋原文件的內(nèi)容,如果想把新寫(xiě)入的內(nèi)容追加到原文件中。可以使用Context.MODE_APPEND

Context.MODE_APPEND:模式會(huì)檢查文件是否存在,存在就往文件追加內(nèi)容,否則就創(chuàng)建新文件。

Context.MODE_WORLD_READABLE和Context.MODE_WORLD_WRITEABLE用來(lái)控制其他應(yīng)用是否有權(quán)限讀寫(xiě)該文件。

MODE_WORLD_READABLE:表示當(dāng)前文件可以被其他應(yīng)用讀取;

MODE_WORLD_WRITEABLE:表示當(dāng)前文件可以被其他應(yīng)用寫(xiě)入。

如果希望文件被其他應(yīng)用讀和寫(xiě),可以傳入: openFileOutput(“itcast.txt”, Context.MODE_WORLD_READABLE + Context.MODE_WORLD_WRITEABLE); android有一套自己的安全模型,當(dāng)應(yīng)用程序(.apk)在安裝時(shí)系統(tǒng)就會(huì)分配給他一個(gè)userid,當(dāng)該應(yīng)用要去訪(fǎng)問(wèn)其他資源比如文件的時(shí)候,就需要userid匹配。默認(rèn)情況下,任何應(yīng)用創(chuàng)建的文件,sharedpreferences,數(shù)據(jù)庫(kù)都應(yīng)該是私有的(位于/data/data//files),其他程序無(wú)法訪(fǎng)問(wèn)。

除非在創(chuàng)建時(shí)指定了Context.MODE_WORLD_READABLE或者Context.MODE_WORLD_WRITEABLE ,只有這樣其他程序才能正確訪(fǎng)問(wèn)。

讀取文件示例:

public void load(){

try {

FileInputStream inStream=this.openFileInput(“a.txt”);

ByteArrayOutputStream stream=new ByteArrayOutputStream();

byte buffer=new byte;

int length=-1;

while((length=inStream.read(buffer))!=-1) {

stream.write(buffer,0,length);

}

stream.close();

inStream.close();

text.setText(stream.toString());

Toast.makeText(MyActivity.this,”Loaded”,Toast.LENGTH_LONG).show();

} catch (FileNotFoundException e) {

e.printStackTrace();

}

catch (IOException e){

return ;

}

}

對(duì)于私有文件只能被創(chuàng)建該文件的應(yīng)用訪(fǎng)問(wèn),

如果希望文件能被其他應(yīng)用讀和寫(xiě),

可以在創(chuàng)建文件時(shí),指定Context.MODE_WORLD_READABLE和Context.MODE_WORLD_WRITEABLE權(quán)限。

Activity還提供了getCacheDir()和getFilesDir()方法: g

etCacheDir()方法用于獲取/data/data//cache目錄 getFilesDir()方法用于獲取/data/data//files目錄。

把文件存入SDCard:

使用Activity的openFileOutput()方法保存文件,文件是存放在手機(jī)空間上,

一般手機(jī)的存儲(chǔ)空間不是很大,存放些小文件還行,如果要存放像視頻這樣的大文件,是不可行的。

對(duì)于像視頻這樣的大文件,我們可以把它存放在SDCard。

SDCard是干什么的?你可以把它看作是移動(dòng)硬盤(pán)或U盤(pán)。

在模擬器中使用SDCard,你需要先創(chuàng)建一張SDCard卡(當(dāng)然不是真的SDCard,只是鏡像文件)。

創(chuàng)建SDCard可以在Eclipse創(chuàng)建模擬器時(shí)隨同創(chuàng)建,也可以使用DOS命令進(jìn)行創(chuàng)建,

如下: 在Dos窗口中進(jìn)入android SDK安裝路徑的tools目錄,

輸入以下命令創(chuàng)建一張容量為2G的SDCard,文件后綴可以隨便取,

建議使用.img: mksdcard 2023M D:\AndroidTool\sdcard.img 在程序中訪(fǎng)問(wèn)SDCard,你需要申請(qǐng)?jiān)L問(wèn)SDCard的權(quán)限。

在AndroidManifest.xml中加入訪(fǎng)問(wèn)SDCard的權(quán)限如下:

要往SDCard存放文件,程序必須先判斷手機(jī)是否裝有SDCard,并且可以進(jìn)行讀寫(xiě)。

注意:訪(fǎng)問(wèn)SDCard必須在AndroidManifest.xml中加入訪(fǎng)問(wèn)SDCard的權(quán)限。

if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){

File sdCardDir = Environment.getExternalStorageDirectory();//獲取SDCard目錄

File saveFile = new File(sdCardDir, “a.txt”);

FileOutputStream outStream = new FileOutputStream(saveFile);

outStream.write(“test”.getBytes());

outStream.close();

}

Environment.getExternalStorageState()方法用于獲取SDCard的狀態(tài),如果手機(jī)裝有SDCard,并且可以進(jìn)行讀寫(xiě),那么方法返回的狀態(tài)等于Environment.MEDIA_MOUNTED。

Environment.getExternalStorageDirectory()方法用于獲取SDCard的目錄,當(dāng)然要獲取SDCard的目錄,你也可以這樣寫(xiě):

File sdCardDir = new File(“/sdcard”); //獲取SDCard目錄

File saveFile = new File(sdCardDir, “itcast.txt”);

//上面兩句代碼可以合成一句:

File saveFile = new File(“/sdcard/a.txt”);

FileOutputStream outStream = new FileOutputStream(saveFile);

outStream.write(“test”.getBytes());

outStream.close();

第三種: SQLite數(shù)據(jù)庫(kù)存儲(chǔ)數(shù)據(jù)

SQLite是輕量級(jí)嵌入式數(shù)據(jù)庫(kù)引擎,它支持 SQL 語(yǔ)言,

并且只利用很少的內(nèi)存就有很好的性能。

此外它還是開(kāi)源的,任何人都可以使用它。

許多開(kāi)源項(xiàng)目((Mozilla, PHP, Python)都使用了 SQLite

SQLite 由以下幾個(gè)組件組成:SQL 編譯器、內(nèi)核、后端以及附件。

SQLite 通過(guò)利用虛擬機(jī)和虛擬數(shù)據(jù)庫(kù)引擎(VDBE),使調(diào)試、修改和擴(kuò)展 SQLite 的內(nèi)核變得更加方便。

特點(diǎn):

面向資源有限的設(shè)備,

沒(méi)有服務(wù)器進(jìn)程,

所有數(shù)據(jù)存放在同一文件中跨平臺(tái),

可自由復(fù)制。

SQLite 基本上符合 SQL-92 標(biāo)準(zhǔn),和其他的主要 SQL 數(shù)據(jù)庫(kù)沒(méi)什么區(qū)別。它的優(yōu)點(diǎn)就是高效,Android 運(yùn)行時(shí)環(huán)境包含了完整的 SQLite。

SQLite 和其他數(shù)據(jù)庫(kù)更大的不同就是對(duì)數(shù)據(jù)類(lèi)型的支持,創(chuàng)建一個(gè)表時(shí),可以在 CREATE TABLE 語(yǔ)句中指定某列的數(shù)據(jù)類(lèi)型,但是你可以把任何數(shù)據(jù)類(lèi)型放入任何列中。當(dāng)某個(gè)值插入數(shù)據(jù)庫(kù)時(shí),SQLite 將檢查它的類(lèi)型。如果該類(lèi)型與關(guān)聯(lián)的列不匹配,則 SQLite 會(huì)嘗試將該值轉(zhuǎn)換成該列的類(lèi)型。如果不能轉(zhuǎn)換,則該值將作為其本身具有的類(lèi)型存儲(chǔ)。比如可以把一個(gè)字符串(String)放入 INTEGER 列。SQLite 稱(chēng)這為“弱類(lèi)型”(manifest typing.)。 此外,SQLite 不支持一些標(biāo)準(zhǔn)的 SQL 功能,特別是外鍵約束(FOREIGN KEY constrains),嵌套 transcaction 和 RIGHT OUTER JOIN 和 FULL OUTER JOIN, 還有一些 ALTER TABLE 功能。 除了上述功能外,SQLite 是一個(gè)完整的 SQL 系統(tǒng),擁有完整的觸發(fā)器,交易等等。

Android 集成了 SQLite 數(shù)據(jù)庫(kù) Android 在運(yùn)行時(shí)(run-time)集成了 SQLite,所以每個(gè) Android 應(yīng)用程序都可以使用 SQLite 數(shù)據(jù)庫(kù)。

對(duì)于熟悉 SQL 的開(kāi)發(fā)人員來(lái)時(shí),在 Android 開(kāi)發(fā)中使用 SQLite 相當(dāng)簡(jiǎn)單。但是,由于 JDBC 會(huì)消耗太多的系統(tǒng)資源,所以 JDBC 對(duì)于手機(jī)這種內(nèi)存受限設(shè)備來(lái)說(shuō)并不合適。因此,Android 提供了一些新的 API 來(lái)使用 SQLite 數(shù)據(jù)庫(kù),Android 開(kāi)發(fā)中,程序員需要學(xué)使用這些 API。

數(shù)據(jù)庫(kù)存儲(chǔ)在 data//databases/ 下。 Android 開(kāi)發(fā)中使用 SQLite 數(shù)據(jù)庫(kù) Activites 可以通過(guò) Content Provider 或者 Service 訪(fǎng)問(wèn)一個(gè)數(shù)據(jù)庫(kù)。

下面會(huì)詳細(xì)講解如果創(chuàng)建數(shù)據(jù)庫(kù),添加數(shù)據(jù)和查詢(xún)數(shù)據(jù)庫(kù)。 創(chuàng)建數(shù)據(jù)庫(kù) Android 不自動(dòng)提供數(shù)據(jù)庫(kù)。在 Android 應(yīng)用程序中使用 SQLite,必須自己創(chuàng)建數(shù)據(jù)庫(kù),然后創(chuàng)建表、索引,填充數(shù)據(jù)。

Android 提供了 SQLiteOpenHelper 幫助你創(chuàng)建一個(gè)數(shù)據(jù)庫(kù),你只要繼承 SQLiteOpenHelper 類(lèi),就可以輕松的創(chuàng)建數(shù)據(jù)庫(kù)。SQLiteOpenHelper 類(lèi)根據(jù)開(kāi)發(fā)應(yīng)用程序的需要,封裝了創(chuàng)建和更新數(shù)據(jù)庫(kù)使用的邏輯。

SQLiteOpenHelper 的子類(lèi),至少需要實(shí)現(xiàn)三個(gè)方法:

1 構(gòu)造函數(shù),調(diào)用父類(lèi) SQLiteOpenHelper 的構(gòu)造函數(shù)。這個(gè)方法需要四個(gè)參數(shù):上下文環(huán)境(例如,一個(gè) Activity),數(shù)據(jù)庫(kù)名字,一個(gè)可選的游標(biāo)工廠(通常是 Null),一個(gè)代表你正在使用的數(shù)據(jù)庫(kù)模型版本的整數(shù)。

2 onCreate()方法,它需要一個(gè) SQLiteDatabase 對(duì)象作為參數(shù),根據(jù)需要對(duì)這個(gè)對(duì)象填充表和初始化數(shù)據(jù)。

3 onUpgrage() 方法,它需要三個(gè)參數(shù),一個(gè) SQLiteDatabase 對(duì)象,一個(gè)舊的版本號(hào)和一個(gè)新的版本號(hào),這樣你就可以清楚如何把一個(gè)數(shù)據(jù)庫(kù)從舊的模型轉(zhuǎn)變到新的模型。

第四種 使用ContentProvider存儲(chǔ)數(shù)據(jù) ContentProvider其實(shí)也是通過(guò)數(shù)據(jù)庫(kù)的方式來(lái)存儲(chǔ)數(shù)據(jù)的,因此這里不再做詳細(xì)介紹

Android 怎么連接遠(yuǎn)程數(shù)據(jù)庫(kù)

1:要有慧睜服務(wù)器端程序,如ruby等,由服務(wù)器端操作數(shù)據(jù)庫(kù),android客戶(hù)端通過(guò)http收發(fā)json或xml與服務(wù)器交互。

2:android有世神自前返歲己的數(shù)據(jù)庫(kù)sqlite,但那只適合儲(chǔ)存本機(jī)的資料。

關(guān)于android 共享數(shù)據(jù)庫(kù)連接的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。

成都創(chuàng)新互聯(lián)科技有限公司,經(jīng)過(guò)多年的不懈努力,公司現(xiàn)已經(jīng)成為一家專(zhuān)業(yè)從事IT產(chǎn)品開(kāi)發(fā)和營(yíng)銷(xiāo)公司。廣泛應(yīng)用于計(jì)算機(jī)網(wǎng)絡(luò)、設(shè)計(jì)、SEO優(yōu)化、關(guān)鍵詞排名等多種行業(yè)!


文章標(biāo)題:Android數(shù)據(jù)庫(kù)共享連接的實(shí)現(xiàn)方法(android共享數(shù)據(jù)庫(kù)連接)
網(wǎng)站鏈接:http://www.5511xx.com/article/djddgpd.html