轻量级——通过单例、归档存储多个客户数据
前言
之前一直是只利用单例存储个人信息的。为了保证客户数据的升级,还必需重写每个属性的set方法,为每一个属性建立一个key,一旦升级就要用NSUserDefaults进行存储,一条属性基本需要十行代码进行书写。假如属性多了起来,那代码量就更加惨不忍睹。且假如在客户数据包含model的情况下,还要进行额外解决,那过程就更加繁琐了。
索性,自己就利用归档相关的知识重新进行了整理。
demo
大家需要导入的文件如下:
而后在自己项目的中构建的客户模型继承TLBaseModel就行了。
在TLBaseModel中提供三个方法:
+ (instancetype)sharedInstance:(NSString *)key;+ (void)saveData:(NSString *)key;+ (void)clearData:(NSString *)key;作用分别是:
根据标识key创立单例对象。
存储/升级数据。
删除数据。
1.存储数据
UserModel *userModel = [UserModel sharedInstance:UserKey0];userModel.dic = @{@"sex":@"man"};userModel.name = @"tl";userModel.age = 25; FatherModel *fatherModel = [FatherModel new];fatherModel.arr = @[@"1",@"2",@"3"];fatherModel.name = @"xxx";fatherModel.phone = 18599990001;userModel.father = fatherModel;WifeModel *wifeModel = [WifeModel new];wifeModel.name = @"yyy";wifeModel.height = 165;wifeModel.weight = 56.5;fatherModel.wife = wifeModel;[UserModel saveData:UserKey0];打印结果:
2.升级数据
UserModel *userModel = [UserModel sharedInstance:UserKey0];FatherModel *fatherModel = userModel.father;WifeModel *wifeModel = fatherModel.wife; userModel.age = 30;fatherModel.arr = nil;fatherModel.name = @"yyy";wifeModel.name = nil; [UserModel saveData:UserKey0];打印结果:
3.删除数据
[UserModel clearData:UserKey0];打印结果:
假如项目只要要存储单个客户信息,TLBaseModel的三个方法去掉参数传递,实现方法略微改一下就可。
假如大家有什么疑问或者者能帮忙改进的地方,欢迎评论。
说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 轻量级——通过单例、归档存储多个客户数据
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 轻量级——通过单例、归档存储多个客户数据