導航:首頁 > 操作系統 > androidormlite框架

androidormlite框架

發布時間:2022-08-19 21:24:41

『壹』 android ormlite 什麼是單例

先去ORMLite官網下載jar包,對於Android為:ormlite-android-4.48.jar 和 ormlite-core-4.48.jar ;
ps:訪問不了的朋友,文章末尾會把jar、源碼、doc與本篇博客例子一起打包提供給大家下載。
2、配置Bean類
有了jar,我們直接新建一個項目為:zhy_ormlite,然後把jar拷貝到libs下。
然後新建一個包:com.zhy.zhy_ormlite.bean專門用於存放項目中的Bean,首先新建一個User.java

[java] view plain
package com.zhy.zhy_ormlite.bean;

import com.j256.ormlite.field.DatabaseFi

『貳』 android sqlite框架哪個好

orm 的 db 工具類,簡化建表、查詢、更新、插入、事務、索引的操作
1. greenDAO
Android Sqlite orm 的 db 工具類
項目地址:https://github.com/greenrobot/greenDAO
文檔介紹:http://green-orm.com/documentation/
官網網址:http://green-orm.com/
特點:(1) 性能佳
(2) 簡單易用的 API
(3) 內存小好小
(4) 庫大小小
ActiveAndroid
Android Sqlite orm 的 db 工具類
項目地址:https://github.com/pardom/ActiveAndroid
文檔介紹:https://github.com/pardom/ActiveAndroid/wiki/_pages
Sprinkles
Android Sqlite orm 的 db 工具類,比較顯著的特點就是配合 https://github.com/square/retrofit 能保存從伺服器獲取的數據
項目地址:https://github.com/emilsjolander/sprinkles
文檔介紹:http://emilsjolander.github.io/blog/2013/12/18/android-with-sprinkles/
Realm
移動端的資料庫,適用於 Phone、Tablet、Wearable,支持 ORM,線程安全、支持連表及資料庫加密,比 SQLite 性能更好
項目地址:https://github.com/realm/realm-java
文檔介紹:http://realm.io/docs/java/0.72.0/
ormlite-android
項目地址:https://github.com/j256/ormlite-android
文檔介紹:http://ormlite.com/sqlite_java_android_orm.shtml
Schematic
根據 SQLite 生成 ContentProvider
項目地址:https://github.com/SimonVT/schematic
DBFlow
Android SQLite ORM 工具庫。綜合了 Active Android, Schematic, Ollie,Sprinkles 等庫的優點;通過註解實現,性能好;能生成 ContentProvider。
項目地址:https://github.com/Raizlabs/DBFlow
文檔介紹:https://github.com/Raizlabs/DBFlow#usage-docs

都可以試試,都很好,但好的不一定就適合你,有的簡單實用,有的功能全面,有的效率更高,看你更注重哪方面了。

希望採納~

『叄』 android 資料庫框架哪個好

請看sqllite增刪改查的小例子,例子來自於android學習手冊,裡面有源碼。android學習手冊包含9個章節,108個例子,源碼文檔隨便看,例子都是可交互,可運行,源碼採用android studio目錄結構,高亮顯示代碼,文檔都採用文檔結構圖顯示,可以快速定位。360手機助手中下載,圖標上有貝殼

先介紹一下ORM的概念,以前也一直聽說,不過沒詳細了解啥意思。其全稱叫做對象關系映射(Object Relation Mapping),是一種程序設計技術,用於實現面向對象編程語言里不同類型系統的數據之間的轉換。從效果上說,它其實是創建了一個可在編程語言里使用的「虛擬對象資料庫」。
面向對象是從軟體工程基本原則(如耦合、聚合、封裝)的基礎上發展起來的,而關系資料庫則是從數學理論發展而來的. 兩者之間是不匹配的.而ORM作為項目中間件形式實現數據在不同場景下數據關系映射. 對象關系映射是一種為了解決面向對象與關系資料庫存在的互不匹配的現象的技術.ORM就是這樣而來的。


下面先列出幾個ORM框架:ORMLite、green、ormndroid、androrm、ActiveAndroid

其中以前最早接觸過ormlite,GreenDao了解過,其他的幾個真沒怎麼見過。所以這里主要介紹ormlite和GreenDao。

最開始現在stackoverflow輸入sqlite orm關鍵字,搜索出了一些相關的文章:http://stackoverflow.com/search?q=sqlite+orm,你會發現很有趣的是,ormlite的作者Gray和greenDao的開發團隊green robot同時出現在一些帖子中,向提問者推薦他們的框架。當然也會有一些熱心的朋友推薦ormdroid。其實不論在stackoverflow上還是官網上,greenDao的團隊的比較都是針對ORMLite的,可見,其主要的競爭對手,或許稱互相促進者更合適,畢竟他們沒有什麼商業利益,完全開源。所以開源的ORM框架中,ormLite和greenDao是最火的。其它幾種就不做比較,有興趣的朋友可以到官網看下。下面對ORMLite和GreenDao做個簡單的比較:


ormlite
基於註解和反射的的方式,導致ormlite性能有著一定的損失(註解其實也是利用了反射的原理)

優點:
文檔較全面,社區活躍,有好的維護,使用簡單,易上手。

缺點:
基於反射,效率較低

GreenDao

官網中明確指明了其首要設計目標:
Maximum performance (probably the fastest ORM for Android):系能最大化
Easy to use APIs:便於使用
Highly optimized for Android:對於Android高度優化
Minimal memory consumption:最小化內存開銷
Small library size, focus on the essentials:較小的文件體積,只集中在必要的部分上。

優點:
效率很高,插入和更新的速度是sqlite的2倍,載入實體的速度是ormlite的4.5倍。官網測試結果:http:/

/green-orm.com/features/
文件較小(<100K),佔用更少的內存 ,但是需要create Dao,
操作實體靈活:支持get,update,delete等操作


缺點:

學習成本較高。其中使用了一個java工程根據一些屬性和規則去generate一些基礎代碼,類似於javaBean但會有一些規則,另外還有QueryBuilder、Dao等API,所以首先要明白整個過程,才能方便使用。沒有ORMLite那樣封裝的完整,不過greenDao的官網上也提到了這一點,正是基於generator而不是反射,才使得其效率高的多。


另外GreenDao支持Protocol buffers協議數據的直接存儲 ,如果通過protobuf協議和伺服器交互,不需要任何的映射。

Protocol Buffers協議:以一種高效可擴展的對結構化數據進行編碼的方式。google內部的RPC協議和文件格式大部分都是使用它。
RPC:遠程過程調用(Remote Procere Call,RPC)是一個計算機通信協議,它是一種通過網路從遠程計算機程序上請求服務,而不需要了解底層網路技術的協議。


可能因為GreenDao的效率高,而且需要學習成本高點,所以個人還是有興趣學一學的。接下來會發布一些GreenDao更詳細的文章,有對官方文檔的翻譯還有代碼的簡單講解。

或許以上內容很簡單,只是簡單的介紹了下,對其它幾個框架並沒有做更多的介紹,有了解的朋友可以提出來,可以提出來,大家一起探討下。

『肆』 Android 開發一般都使用什麼框架

開源框架推薦:

網路
* [okhttp](square/okhttp · GitHub)
* [android-async-http](loopj/android-async-http · GitHub)

事件匯流排
* [otto](square/otto · GitHub)
* [EventBus](greenrobot/EventBus · GitHub)

依賴注入
* [Dagger](square/dagger · GitHub)
* [RoboGuice](roboguice/roboguice · GitHub)
* [ButterKnife](JakeWharton/butterknife · GitHub)

圖片
* [Fresco](facebook/fresco · GitHub)
* [Glide](bumptech/glide · GitHub)
* [picasso](square/picasso · GitHub)

資料庫
* [greenDao](greenrobot/greenDAO · GitHub)
* [ormlite](j256/ormlite-android · GitHub)
* [LitePal](LitePalFramework/LitePal · GitHub)

響應式編程
* [RxJava](ReactiveX/RxJava · GitHub)
* [RxAndroid](ReactiveX/RxAndroid: RxJava bindings for An...)

日誌輸出
* [logger](orhanobut/logger: Simple, pretty and powerf...)
* [android-CLog](liaohuqiu/android-CLog)
* [KLog](ZhaoKaiQiang/KLog · GitHub)
* [LogUtils](pengwei1024/LogUtils · GitHub)

崩潰統計平台
* [騰訊bugly](騰訊Bugly - Android Crash(崩潰)_iOS Crash(崩潰)_ANR_卡頓)
* [Crittercism](Crittercism - Developer Home)
* [Crashlytics](The most powerful, yet lightest weight crash reporting solution for iOS and Android
developers.)

架構設計
這個肯定得了解下MVC,MVP,MVVM還有設計模式這些,這里有幾個開源項目推薦下

philm
Movie collection and information app for Android.
Github地址:chrisbanes/philm: Movie collection and info...

SimpleNews
基於Material Design和MVP的新聞客戶端
Github地址:GitHub - liuling07/SimpleNews: 基於Material Design和MVP的新聞客戶端

GankDaily
A application show technical information every working days, use MVP pattern.
Github地址:maoruibin/GankDaily

SimplifyReader
Github地址:GitHub - SkillCollege/SimplifyReader: 一款基於Google Material Design設計開發的Android客戶端,包括新聞簡讀,圖片瀏覽,視頻爽看 ,音樂輕聽以及二維碼掃描五個子模塊。

NBAPlus
Github地址:SilenceDut/NBAPlus · GitHub

PhotoNoter
Github地址:yydct/PhotoNoter

Mei
Github地址:drakeet/Mei: gank.io unofficial client, RxJava & Retrofit

DebugDrawer
Android Debug Drawer for faster development
Github地址:palaima/DebugDrawer · GitHub

ViewServer
Local server for Android's HierarchyViewer
Github地址:romainguy/ViewServer · GitHub

AndroidWiFiADB
IntelliJ/AndroidStudio plugin which provides a button to connect your Android device over WiFi to install, run and debug your applications without a USB connected.

『伍』 Android 要怎樣實現持久化登錄

Android中內置了sqlite,但是常用的開發語言java是面向對象的,而資料庫是關系型的,二者之間的轉化每次都很麻煩(主要是我對 sql語言不熟悉)。而Java Web開發中有很多orm框架,但是想直接放到Android上用有些麻煩。嘗試了一下找Android的orm框架,說實話還有好幾個。
實現考慮的是:androrm
參考官網:http://androrm.the-pixelpla.net/
一個是依賴包:Apache Commons - Lang (2.6)
另外一個就是主包:androrm.jar 不管怎麼下載的都不能使用...
然後有考慮了一下db4o
官網:http://www.db4o.com/
官網上的介紹說是已經支持Android了,但是我一是覺得包有點大,而是覺得速度有點慢
最後看到的就是ormlite
官網:http://ormlite.com/
一共兩個包:一個是ormlite-core-4.24.jar,另一個是ormlite-android-4.24.jar
從以下網址可以下載到:http://ormlite.com/releases/
下面按照慣例來個Hello world
新建Android項目:HelloOrmLite

『陸』 android開發一般都使用什麼框架

Android開發框架介紹
編輯文檔
學分 +2
開發框架方麵包含基本的應用功能開發、數據存儲、網路訪問這三大塊:
一、應用方面
一般而言一個標準的Android程序由如下4部分組成即Activity、Broadcast Intent Receiver、Service、Content Provider: 1. Activity是最頻繁、最基本的模塊,在Android中,一個Activity就是手機上一屏,相當於一個網頁一樣,所不同的是,每個Activity運行結束了,有個返回值,類似一個函數一樣。Android系統會自動記錄從首頁到其他頁面的所有跳轉記錄並且自動將以前的Activity壓入系統堆棧,用戶可以通過編程的方式刪除歷史堆棧中的Activity Instance。
Activity類中主要是跟界面資源文件關聯起來(res/layout目錄下的xml資源,也可以不含任何界面資源),內部包含控制項的顯示設計、界面交互設計、事件的響應設計以及數據處理設計、導航設計等application設計的方方面面。 2. Broadcast Intent Receiver
Intent提供了各種不同Activity進行跳轉的機制,譬如如果從A activity跳轉到B activity,使用Intent來實現如下: Intent in = new Intent(A.this, B.class); startActivity(in);
BroadcastReceiver提供了各種不同的Android應用程序進行進行進程間通訊的機制,譬如當電話呼叫來臨時,可以通過BroadcastReceiver發布廣播消息。對於用戶而言,BroadcastReceiver是不透明的,用戶無法看到這個事件,BroadcastReceiver通過NotificationManager來通知用戶這些事件發生了,它既可以在資源AndroidManifest.xml中注冊,也可以在代碼中通過Context.registerReceiver()進行注冊,只要是注冊了,當事件來臨的時候,即時程序沒有啟動,系統也在需要的時候會自動啟動此應用程序;另外各應用程序很方便地通過Context.sendBroadcast()將自己的事情廣播給其他應用程序;
3. Service,跟Windows當中的Service完全是一個概念,用戶可以通過startService(Intent service)啟動一個Service,也可通過Context.bindService來綁定一個Service.
4. Content Provider,由於Android應用程序內部的數據都是私有的,Content Provider提供了應用程序之間數據交換的機制,一個程序可以通過實現一個ContentProvider的抽象介面將自己的數據暴露出去,並且隱蔽了具體的數據存儲實現,標準的ContentProvider提供了基本的CRUD(Create,Read,Update,Delete)的介面,並且實現了許可權機制,保護了數據交互的安全性; 一個標準的Android應用程序的工程文件包含如下幾大部分: -> Java源代碼部分(包含Activity),都在src目錄當中;
-> R.java文件,這個文件是Eclipse自動生成與維護的,開發者不需要修改,提供了Android對的資源全局索引; -> Android Library,這個是應用運行的Android庫;
-> assets目錄,這個目錄裡面主要用與放置多媒體等一些文件;
-> res目錄,放置的是資源文件,跟VC中的資源目錄基本類似,其中的drawable包含的是圖片文件,layout裡麵包含的是布局文件,values目錄裡面主要包含的是字元串(strings.xml)、顏色(colors.xml)以及數組(arrays.xml)資源;
-> AndroidManifest.xml,這個文件異常重要,是整個應用的配置文件,在這個文件中,需要聲明所有用到的Activity、Service、Receiver等。

『柒』 怎樣搭建一個android開發框架

搭建Android開發環境
准備工作:下載Eclipse、JDK、Android SDK、ADT插件
下載地址:Eclipse:http://www.eclipse.org/downloads/
JDK:http://www.oracle.com/technetwork/java/javase/downloads/jdk7u9-downloads-1859576.html
Android SDK:http://developer.android.com/sdk/index.html
ADT:http://developer.android.com/tools/sdk/eclipse-adt.html
1、安裝和配置JAVA開發環境:
①把准備好的Eclipse和JDK安裝到本機上(最好安裝在全英文路徑下),並給JDK配置環境變數,其中JDK的變數值為JDK安裝路徑的根目錄,如我的為:D:\Program Files\Java\jdk1.7.0_02;
②打開命令提示符(cmd),輸入java -version命令,顯示如下圖則說明JAVA環境變數已經配置好了。
2、安裝ADT插件:
①打開已安裝好的Eclipse,選擇菜單欄上的「Help」->在彈出的下拉框中單擊選擇「Install new software...」;
②在新打開的對話框中我們完全可以直接在"Work with"中輸入:https://dl-ssl.google.com/android/eclipse/在線安裝ADT插件,但由於Google的伺服器搭建在國外,所以通過這種方式安裝起來會比較慢,而且可能會出現人品差死活裝不上的情況,所以不推薦在線安裝。
③我推薦直接通過下載好的ADT插件壓縮包進行安裝(此種方式可以在離線環境下進行)。具體步驟是:在新打開的對話框中點擊「Add」按鈕->在打開的對話框中點擊「Archive」按鈕選擇之前已經下載好保存在本地硬碟的ADT插件壓縮包,至於上面的「Name」可以隨便取,這只是一個代號而已,沒什麼實際作用。
④在上一步中點擊「Ok」按鈕後我們會發現中間的空白處出現了兩行復選框,單擊"Select All"按鈕選中所有的復選框,這步過後一路「Next」,需要「Accept」的就選中「Accept」,直到點擊「Finish」結束,這樣ADT插件就安裝好了。整個過程需要的時間視機器性能而定。安裝好ADT插件後,Eclipse的工具欄會出現一排Android的圖標,如下圖:
3、安裝SDK:
①把下載好的Android SDK安裝到本機上(最好安裝在全英文路徑下),並為Android SDK配置環境變數。Android SDK的環境變數值為SDK安裝目錄下的platform-tools文件夾和tools文件夾子目錄路徑,如我的分別為:E:\My Studying\Android\android-sdk\platform-tools、E:\My Studying\Android\android-sdk\tools,在變數值中,兩個路徑用逗號隔開。
②打開命令提示符(cmd),分別輸入android -h和adb命令,顯示如下圖則說明Android SDK環境變數已經配置好了。
③打開Android SDK的安裝目錄,雙擊 "SDK Manager"->在打開的窗口中先選擇你需要安裝的SDK版本,其中「Status」表示該SDK包是否安裝,如我選的是「Android2.2(API 8)」(我的之前已經安裝過了,所以「Status」為「Installed」)->再點擊「Install packages...」按鈕,在彈出來的窗口中最好選「Accept All」這樣才能安裝你剛才選的所有的包->最後點「Install」按鈕就開始安裝了,整個過程會很慢,這需要你的耐心。
另外我們還可以通過在Eclipse上的工具欄中點擊下圖指示的圖標打開「SDK Manager」然後進行安裝,這樣和上面的SDK安裝方式一樣,就不累述了。
④最後再選擇Eclipes主菜單上的"Windows"->選擇"preferrnces";
⑤在彈出來的對話框中選中左邊欄的「Android」->通過右側的「Browse...」按鈕選擇SDK的安裝路徑根目錄->點擊最下方的「Ok」按鈕,這樣SDK就在Eclipse上載入成功了。
4、創建Android模擬器(AVD):
①打開Eclipse->在Eclipse的工具欄上單擊下圖指示的圖標打開「Android Virsual Device Manager」窗口;
②在「Android Virsual Device Manager」窗口單擊「New」按鈕->在彈出來的窗口中"Name"可以隨便取;「Target」指模擬器的系統版本;「SD Card」的"size"是指手機存儲卡的大小,只要你不在模擬器上裝太多的應用,一般給個二三十MB就夠了;「Skin」是指屏幕的解析度大小,其中「Built in」是一般手機常用標准屏幕解析度大小,而「Resolution」是自定義屏幕解析度大小,具體做法,可以根據自身情況選擇。->一切設置好後點擊「Create AVD」,這時一個模擬器就創建好了。如果有必要,我們可以創建多個模擬器用於測試時使用。
附:Android模擬器型號以及其對應的解析度大小:

Standard Width Height DAR Pixeis
HVGA 480 * 320 3:2 153,600
QVGA 320 * 240 4:3 76,800
WQVGA400 400 * 240 5:3 96,000
WQVGA432 432 * 240 9:5 103,680
WVGA800 800 * 480 5:3 384,000
WVGA852 854 * 480 409,920

至此為止,在Eclipse上就已經成功搭建Android開發環境了。

『捌』 android studio怎麼引入ormlitesqliteopenhelper的jar

首先說明一下,本人已經使用ormlite-Android做過兩個大型的項目開發,很久以來就想對此資料庫做一些總結,正好今天有空就寫出來:
1. 首先去官網http://ormlite.com/看官方說明,也可以去http://ormlite.com/releases/下載兩個包:一個是ormlite-core-4.24.jar,另一個是ormlite-android-4.24.jar
2. 下載完2個jar包後導入項目中,在此不多說,大家都懂的
3.前奏工作完成,下面就是怎麼去搭建框架使用了,首先說明本人做過一段時間的web開發,所以喜歡用mvc模式,下面將通過代碼來說明:
1).建立自己的DatabaseHelper類
[java] view plain
public class DatabaseHelper extends OrmLiteSqliteOpenHelper {

// name of the database file for your application -- change to something
// appropriate for your app
private static final String DATABASE_NAME

『玖』 android app開發中常用到哪些開源框架

在前面的課程中,隨著對Android體系的了解,已經可以進行正常的Android應用開發了。在Android開發中,同其他工程開發一樣,也經常使用一些提高效率的框架,本文我們做一個對比。這些框架,既包括:網路請求框架、也包括圖片載入庫框架、還包括資料庫操作等一些框架,總之,了解和熟悉這些框架,會對自己的開發效率有很大的提升和幫助。

網路請求框架

1、okHttp

在前文的學習中,我們已經了解過okHttp,是一個常用的網路載入庫。

2、Retrofit

介紹

Retrofit是一個很不錯的網路請求庫,該庫是square開源的另外一個庫,之前的okhttp也是該公司開源的。

Retrofit是基於OkHttp封裝的RESTful網路請求框架,使用註解的方式配置請求。優點是速度快,使用註解,callback函數返回結果自動包裝成Java對象。官方自己的介紹說:

A type-safe REST client for Android and Java

該網路框架在github上的地址如下:https://square.github.io/retrofit/

要求

Retrofit支持的http方式方式包括 GET/POST/PUT/DELETE/HEAD/PATCH,Retrofit要求Java的版本是1.8+,Android應用的API版本應該在21+。

依賴

使用Retrofit庫,和其他庫一樣,首先需要設置依賴,依然是在build.gradle文件中設置依賴:

//添加retrofit庫依賴

implementation 『com.squareup.retrofit2:retrofit:2.1.0』

//添加gson轉換器

implementation 『com.squareup.retrofit2:converter-gson:2.1.0』

使用

通過一個例子,我們可以來演示該框架的使用步驟:

1、定義請求介面,即程序中都需要什麼請求操作
public interface HttpServices {

/**

閱讀全文

與androidormlite框架相關的資料

熱點內容
如何看為人民幣伺服器 瀏覽:136
linux入門命令大全 瀏覽:961
程序員薪水上三萬很難嗎 瀏覽:684
安卓電腦怎麼連接滑鼠 瀏覽:364
Python函數imshow 瀏覽:958
量化投資雲伺服器放哪兒 瀏覽:598
mv文件夾linux 瀏覽:212
phpjpegwindows 瀏覽:277
程序員轉行一年多少錢 瀏覽:706
柯北大測評自製解壓神器 瀏覽:782
如何讓伺服器入住網易啟動器 瀏覽:109
系統命令提示符 瀏覽:71
java爬蟲代理ip 瀏覽:77
我的世界伺服器怎麼那麼低 瀏覽:921
A2單片機可以做什麼 瀏覽:894
加密貨幣支付新聞 瀏覽:986
伺服器為什麼沒有建立賬套設備 瀏覽:213
win11打開畫圖命令 瀏覽:654
下載安裝手機文件夾ppt 瀏覽:462
來個解壓方法 瀏覽:892