国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

Objective-C中Sqlite3持久層框架

移動開發 iOS
本文介紹的是Objective-c中Sqlite3持久層框架,介紹的是Sqlite3持久層框架,先來看內容。

Objective-cSqlite3持久層框架是本文要介紹的內容,Cocoa與Cocoa Touch(主要是指iphone,ipad,ipod等等)都對sqlite3提供了良好的支持,但objective-c語言中的sqlite3持久層框架確沒有java中那樣豐富與強大、靈活,直到我發現sqlitepersistentobjects這個框架

這個框架利用反射機制與value objects的***結合,對sqlite3進行了非常輕量級的對象封裝(這點有點像我2007年時寫的一個java持久層框架,過些時候我整理一下,開源出來),使用者在編程過程中,基本不用再寫sql語句,也不需要再手工生成sqlite3數據庫文件。你所關心的,就是值對象繼承一個核心類,然后添加值對像的屬性,實際他就是一款Objective-C實現的ActiveRecord–Rails社區紅透半邊天的ORM模式。

一、sqlite persistent objects的下載與安裝

sqlitepersistentobjects是google code上的一個開源項目,大家可以出下載它,本項目地址是:http://code.google.com/p/sqlitepersistentobjects/

下載后,得到的源碼包src內的源文件,copy到自己的項目中,建議***新建一個分類(new group)見注1,與其它源碼分離開來,便于管理.然后再工程中添加”libsqlite3.dylib”庫。見注2

二、sqlite persistent objects的使用

在使用前,我們先了解一下他是怎么工作的,首先要創建一個Objective-C類,這個類只需要繼承自“SQLitePersistentObject”,然后,添加您想要持久化的Objective-C 2.0屬性。當這個類被實例化后,調用”save”方法,會自動保存到數據庫中。

每一個“SQLitePersistentObject”的子類都會擁有數據庫中對應的一張表。每一個屬性(不包括集合類型,像,NSDictionary,NSArray,NSSet或這些類的可變類型)都會持久化到表中相應字段中。屬性中如果含有指針對象是”SQLitePersistentObject”實例,也將會在關聯表里新添條記錄。

注意,這里的屬性必須是實現“NSCoding”的對象,如NSDate,NSString,NSData,NSMutableData,NSNumber與NSObject,而c-string,void pointer, strutct 或 union它們不是對象,將不會支持。但所有的數字(int,float等)都會保存在應的字段上。

我們簡單要來做一個例子,定義一個類Person,繼承SQLitePersistentObject,把這個類的屬性保存到數據庫中,代碼如下:

  1. #import  
  2. #import “SQLitePersistentObject.h”  
  3.  
  4. //Person.m的生成略,大家都應該知道的  
  5.  
  6. @interface Person : SQLitePersistentObject {  
  7. NSString *iName;  
  8. int iAge;  
  9. }  
  10. @property (nonatomic, retain) NSString * iName;  
  11. @property (nonatomic) int iAge;  
  12. @end 

生成類文件后,在其它使用的類中創建實例:

  1. Person *person = [[Person alloc] init];  
  2. person.iName = @”leeguoli”;  
  3. person.iAge = 20

調用”save”方法,保存到數據庫中:

  1. [person save]; 

加載表中的數據也相當的簡單。任何一個”Person”類都有多個提供查詢的類方法。例如,你可以查詢所有姓“lee”的人:

  1. NSArray *people = [Person findByIName:@"'lee%'"];//這里實際有點像like語句,where iName like 'lee%' 

或者更靈活的使用SQL查詢條件:

  1. Person *leeguoli = [Person findFirstByCriteria:@"WHERE i_name = 'leeguoli' AND i_age = 20]; 

注意大寫字母區分的情況用下劃線代替(ActiveRecord的慣例)。”findByCriteria:”返回一個NSArray數組,”findFirstByCriteria:”返回一個對象。

如果要更新,當然這里先要查詢出來需要更新的對象,然后修改對象的值并保存就可以了,這里不再詳寫。

注1、Xcode界面中,右鍵點擊Classes目錄,選擇“Add > New Group”,命名為SQLitePersistentObject。右鍵點擊新建的 “SQLitePersistentObject”目錄,選擇“Add > Existing Files”,將解壓縮出來的src目錄下所有文件導入。

注2、請右鍵點擊左部菜單中的”Frameworks”目錄,選擇 “Add > Existing Frameworks…”,然后在本地目錄中選擇

  1. /Developer/Platforms/iPhoneOS.platform/Developer /SDKs/iPhoneOS3.1.2.sdk/usr/lib/ 

找到“libsqlite3.0.dylib”文件并雙擊。一個彈出窗口將出現,點擊其中“Add”按鈕將庫添加入項目中。

小結:Objective-cSqlite3持久層框架的內容介紹完了,希望本文對你有所幫助!

責任編輯:zhaolei 來源: 博客園
相關推薦

2011-09-07 15:39:08

iPhoneObjective-CSQLite3

2011-07-27 17:10:30

Objective-C 持久化

2011-05-11 15:19:01

CocoaObjective-C

2011-08-15 17:47:13

Objective-CisMemberOfC

2011-07-25 11:02:29

Objective-C Xcode 標簽

2011-08-10 18:07:29

Objective-C反射

2013-06-20 10:40:32

Objective-C實現截圖

2013-03-27 12:54:00

iOS開發Objective-C

2011-05-11 15:58:34

Objective-C

2011-05-11 11:20:26

Objective-C

2011-07-20 13:34:37

Objective-C self.

2011-07-27 16:18:42

Objective-c 協議

2011-07-08 18:44:09

Objective-C Self Super

2011-08-15 17:06:01

Objective-CNSLog

2021-02-15 15:40:28

SQLite3數據庫

2011-08-04 10:57:33

Objective-C C語言 BOOL

2011-08-04 11:15:46

Objective-C 構造函數 構造方法

2011-08-04 14:58:37

Objective-C Cocoa NSString

2013-08-21 14:57:42

objective-c問題

2011-08-02 13:16:36

Objective-C 語法 函數
點贊
收藏

51CTO技術棧公眾號

久久婷婷国产麻豆91天堂| 欧美2区3区4区| 国产一区二区中文字幕| 91视频-88av| 日韩三级毛片| 久久久999精品视频| 亚洲一二三四| 精品99999| 久久久久国产精品嫩草影院| 亚洲免费色视频| 无人在线观看的免费高清视频| 激情丁香综合五月| 精品免费99久久| 男人草女人视频| 久久人人精品| 亚洲无限av看| 黄在线观看免费网站ktv| 日日夜夜免费精品| 国产美女精品在线观看| 成人福利网站| 欧美性猛交xxxx免费看久久久| 992tv在线观看免费进| 亚洲激情自拍视频| 国产一区自拍视频| 精品91在线| 国精产品一区二区| 亚洲影院免费| 国产精品一区二区免费看| 日韩精品成人av| 国产精品1区二区.| 国模私拍视频一区| 欧美尿孔扩张虐视频| 45www国产精品网站| 欧洲综合视频| 国产又粗又猛又爽又黄91精品| 一区二区精品在线| 蜜臀av亚洲一区中文字幕| 亚洲午夜精品一区二区| 国产精品影音先锋| 日本三级免费网站| 欧美日韩18| 8×8x拔擦拔擦在线视频网站| 一本色道综合亚洲| 综合久久婷婷| 欧美精品一区二区三| 亚洲国产高清av| 国产午夜精品美女毛片视频| 中文字幕人成一区| 日韩视频免费直播| 91在线视频| 欧美国产一级| 亚洲品质视频自拍网| 亚洲一区日韩精品| 日本不卡一区二区| 日韩久久一级片| 亚洲欧美在线视频观看| 波多野结衣在线网站| 亚洲色图美腿丝袜| 久久男人av| 蜜桃av噜噜一区二区三区| 国产精品77777竹菊影视小说| 国产天堂在线播放| 欧美熟乱第一页| 成人在线高清| 成人激情视频网| 国产精品自在欧美一区| 中文字幕第12页| 亚洲第一天堂av| 在线视频se| 久久色在线观看| 黄页免费在线| 精品五月天久久| 国产亚洲欧美日韩在线观看一区二区 | 天堂a中文在线| 99久久精品国产毛片| 美脚丝袜一区二区三区在线观看| 国产精品小仙女| 夜色福利资源站www国产在线视频 夜色资源站国产www在线视频 | xxx在线免费观看| 97国产精品视频人人做人人爱| 欧美6一10sex性hd| 久久精品欧美视频| 黄色免费成人| 国产一区视频在线| 日韩黄色av| 日本精品视频一区| 亚洲图片激情小说| 日韩精品一区二区三区不卡| 色激情天天射综合网| 日本少妇精品亚洲第一区| 欧美一级片免费观看| |精品福利一区二区三区| 岛国av在线播放| 亚洲一区二区三区久久| 久久久午夜电影| 青草在线视频| 91精品综合视频| 国产精品伦一区二区三级视频| 免费高清在线观看免费| 欧美日韩极品在线观看一区| 久久365资源| 国产一二三四区在线观看| 婷婷久久综合九色国产成人 | 91精品国产自产在线观看永久∴| 91国产美女在线观看| 蜜桃精品在线观看| 国产二区视频在线观看| 热99精品里视频精品| 91老司机福利 在线| 在线成人av观看| 日韩一区免费观看| 91成人在线精品| 欧美艳星介绍134位艳星| 国产精品电影在线观看| 99精品久久免费看蜜臀剧情介绍| 色呦呦视频在线观看| 精品国产凹凸成av人导航| 91超碰成人| 在线观看成年人视频| 91福利视频网| 国产精品久久看| 欧美成人专区| 日本激情视频在线播放| 欧美精品一区在线播放| 蜜臀91精品国产高清在线观看| 97久久久免费福利网址| 国产成人午夜视频| 后进极品白嫩翘臀在线播放| 久久久久se| wwww国产精品欧美| 日本免费久久| 少妇久久久久久被弄到高潮| 国产亚洲成年网址在线观看| 99久久久国产精品免费调教网站| 中文字幕一区二区三区四区五区| 欧美v国产在线一区二区三区| 亚洲精品影视| 在线网址91| 国产人妻互换一区二区| 国产亚洲精品一区二555| 成人丝袜视频网| 日韩一区二区三区色| www.99av.com| 国产精品扒开腿爽爽爽视频| 欧美香蕉大胸在线视频观看 | 国产黄色在线观看| 欧美在线日韩精品| 亚洲第一免费网站| 国产91在线|亚洲| 国产一区二区视频在线看| 激情综合网五月激情 | 国产99久久久久久免费看农村| 性感女国产在线| www.国产在线播放| 欧美久久精品一级黑人c片| 国产精品美女视频| jvid福利在线一区二区| 91caoporm在线视频| 中文字幕成人一区| 久久精品国产亚洲一区二区| 欧美国产日本韩| 91亚洲国产成人久久精品| 在线观看完整版免费| 亚洲 欧洲 日韩| 亚洲激情成人在线| 欧美~级网站不卡| 色呦呦在线视频| 国产美女无遮挡网站| 国产精品成人播放| 日韩一级黄色片| 2020国产精品| 天天久久综合| 中文字幕乱码在线播放| gogo人体高清视频| 欧美在线播放一区| 久久久久免费视频| 欧美日韩国产天堂| 久久新电视剧免费观看| 在线中文一区| 99久久精品一区二区成人| 在线观看成年人视频| 秋霞在线观看一区二区三区| 日韩在线观看免费网站| 好吊成人免视频| 国产盗摄精品一区二区三区在线| 欧美激情极品| 免费男女羞羞的视频网站在线观看 | 亚洲第一综合网站| 国产激情视频一区| 精品国产一区二区在线观看| 欧美激情自拍偷拍| 2018av在线| 99re在线观看视频| 亚洲欧美一区二区激情| 亚洲专区在线| 日韩中文一区二区| 视频在线这里都是精品| 毛片视频免费| 日韩人妻无码精品久久久不卡| 99精品欧美一区二区三区|