写字楼里写字间,写字间里程序员;程序人员写程序,又拿程序换酒钱。
酒醒只在网上坐,酒醉还来网下眠;酒醉酒醒日复日,网上网下年复年。
但愿老死电脑间,不愿鞠躬老板前;奔驰宝马贵者趣,公交自行程序员。
别人笑我忒疯癫,我笑自己命太贱;不见满街漂亮妹,哪个归得程序员。
版本小更新很频繁 我把项目 放在了 github 上面
https://github.com/li6185377/LKDaoBase
删除了 无关类 现在就只要 导入 LKDaoBase 和FMDatabase 就好了
Where 条件可用 NSDictionary 传值 一些细节修改
大部分都是代码 不好看就是了
这是 示例代码:
对于每个实体 几乎是 0操作 你不用再一行行 写插入 修改 删除的 代码了 定义完 属性 你就完事。 表也是自动创建的
@interface LKDAOTest : LKDAOBase
@end
@interface LKModelTest : LKModelBase
@property(strong,nonatomic)NSString* name;
@property int age;
@property BOOL isGirl;
@property(strong,nonatomic)NSDate* date;
@property(strong,nonatomic)UIImage* image;
@property(strong,nonatomic)NSData* bytes;
@end
@implementation LKDAOTest
+(Class)getBindingModelClass
{
return [LKModelTest class];
}
const static NSString* tablename = @"lktable";
+(const NSString *)getTableName
{
return tablename;
}
@end
@implementation LKModelTest
@end
[dao clearTableData];//清空表数据
model.name = @"nimei";
model.age = 16;
model.isGirl = YES;
model.date = [NSDate date];
model.image = [UIImage imageNamed:@"110.png"];
model.bytes = [@"aaaaaabbbbbbcccccc" dataUsingEncoding:NSUTF8StringEncoding];
[dao insertToDB:model callback:nil];
model.name = @"womei";
[dao insertToDB:model callback:nil]; //可一直 插入
model.name = @"tamei";
[dao insertToDB:model callback:^(BOOL nono){
NSLog(@"insert %d",nono);
}];
NSMutableDictionary* dic = [NSMutableDictionary dictionary];
[dic setObject:@"tamei" forKey:@"name"];
[dao searchWhereDic:dic orderBy:nil offset:0 count:15 callback:^(NSArray* array){
NSLog(@"\n 查询完的数据 \n : %d",array.count);
for (LKModelTest* model in array) {
NSLog(@"model{%@}",model);
}
}];
NSArray* selectnames =[NSArray arrayWithObjects:@"tamei",@"womei", nil];
[dic setObject:selectnames forKey:@"name"];
[dic setObject:@"16" forKey:@"age"];
[dao searchWhereDic:dic orderBy:nil offset:0 count:15 callback:^(NSArray* array){
NSLog(@"\n 查询完的数据 \n : %d",array.count);
for (LKModelTest* model in array) {
NSLog(@"model{%@}",model);
}
}];
... 具体使用方法 请看示例.
结果
2012-12-07 17:44:04.682 LKDBTest[8469:c07] insert 1
2012-12-07 17:44:04.739 LKDBTest[8469:c07]
查询完的数据
: 1
2012-12-07 17:44:04.740 LKDBTest[8469:c07] model{
name : tamei
age : 16
isGirl : 1
date : 2012-12-07 09:44:04 +0000
image : <UIImage: 0x75765a0>
bytes : <61616161 61616262 62626262 63636363 6363> }